Iterator インターフェイス Iterator
&reftitle.intro; 外部のイテレータあるいはオブジェクト自身から反復処理を行うためのインターフェイスです。
&reftitle.interfacesynopsis; Iterator extends Traversable &Methods;
定義済みのイテレータ PHP には多くのイテレータがあらかじめ用意されており、日々の作業に使えます。その一覧は SPL イテレータ を参照ください。
&reftitle.examples; 基本的な使用法 この例は、イテレータで &foreach; を使ったときに、どんな順番でメソッドが呼ばれるかを示すものです。 position = 0; } public function rewind(): void { var_dump(__METHOD__); $this->position = 0; } #[\ReturnTypeWillChange] public function current() { var_dump(__METHOD__); return $this->array[$this->position]; } #[\ReturnTypeWillChange] public function key() { var_dump(__METHOD__); return $this->position; } public function next(): void { var_dump(__METHOD__); ++$this->position; } public function valid(): bool { var_dump(__METHOD__); return isset($this->array[$this->position]); } } $it = new myIterator; foreach($it as $key => $value) { var_dump($key, $value); echo "\n"; } ?> ]]> &example.outputs.similar;
&reftitle.seealso; オブジェクトの反復処理も参照ください。
&language.predefined.iterator.current; &language.predefined.iterator.key; &language.predefined.iterator.next; &language.predefined.iterator.rewind; &language.predefined.iterator.valid;