【PHP8.x】keyメソッドの使い方
keyメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
keyメソッドは、イテレータの現在の要素のキーを返すために定義されたメソッドです。このメソッドが所属するEmptyIteratorクラスは、その名の通り要素を一切持たない特殊なイテレータを表します。foreachループなどでこのイテレータを処理しようとしても、内部に要素が存在しないためループは一度も実行されません。EmptyIteratorにおいてkeyメソッドが呼び出される状況は通常ありませんが、PHPのIteratorインターフェースで定められた要件を満たすために実装されています。Iteratorインターフェースを実装するクラスは、current、key、next、rewind、validという5つのメソッドを必ず定義する必要があります。EmptyIteratorは、要素がない場合でもイテレータとして一貫した振る舞いを保証する役割を担っており、そのためにkeyメソッドも形式的に実装されています。このメソッドは、現在の位置に有効なキーが存在しないことを示すため、呼び出されても何も実行せず、常にnullを返します。
構文(syntax)
1<?php 2 3$iterator = new EmptyIterator(); 4$key = $iterator->key();
引数(parameters)
引数なし
引数はありません
戻り値(return)
never
このメソッドは、実行されると例外をスローするため、実行フローがメソッドの終了に到達しません。そのため、戻り値は定義されていません。