【PHP8.x】keyメソッドの使い方
keyメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
『keyメソッドは、CachingIteratorが現在指している要素のキーを取得するために実行するメソッドです。』
このメソッドは、PHPの標準インターフェースであるIteratorで定義されており、イテレータを反復処理する際の基本的な操作の一つです。foreachループ構文で foreach ($iterator as $key => $value) のようにキーと値の両方を取り出す場合、このkeyメソッドが内部的に呼び出され、$key変数に対応する値が代入されます。CachingIteratorは、元のイテレータを包み込んで先読み機能などを追加しますが、keyメソッドの振る舞いは、基本的にラップしている元のイテレータのkeyメソッドと同じです。つまり、CachingIteratorが指している現在の要素に関して、元のイテレータが持つキーをそのまま返します。返されるキーの型は元のデータ構造に依存し、配列の場合は整数や文字列になります。もしイテレータが有効な要素を指していない状態で呼び出された場合、nullが返されます。このメソッドは、currentメソッドで値を取得し、nextメソッドで次に進むという一連の反復処理の中で、現在の位置を特定するために重要な役割を担います。
構文(syntax)
1<?php 2 3$data = ['a' => 'Apple', 'b' => 'Banana', 'c' => 'Cherry']; 4$iterator = new ArrayIterator($data); 5$cachingIterator = new CachingIterator($iterator); 6 7foreach ($cachingIterator as $value) { 8 // イテレータの現在の要素のキーを取得します 9 $currentKey = $cachingIterator->key(); 10 11 var_dump($currentKey); 12} 13 14?>
引数(parameters)
引数なし
引数はありません
戻り値(return)
mixed
現在の要素のキーを返します。イテレータが終端に達している場合は、null を返します。