【PHP8.x】rewindメソッドの使い方

rewindメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

rewindメソッドは、イテレータの内部ポインタを最初の要素に戻す処理を実行するメソッドです。PHPにおいて、オブジェクトをforeach文などで繰り返し処理する場合、ループ処理が開始される直前に内部的にこのrewindメソッドが呼び出されます。これにより、常にコレクションの先頭から要素の走査が開始されることが保証されます。しかし、このメソッドが所属するEmptyIteratorクラスは、その名の通り要素を一つも持たない特殊なイテレータです。したがって、EmptyIteratorオブジェクトに対してrewindメソッドを呼び出しても、実際には何も処理は行われません。元々要素が存在しないため、先頭に戻すという操作自体に意味がないからです。このメソッドは、PHPの反復処理の標準的な仕組みであるIteratorインターフェースの仕様を満たすために形式的に実装されています。Iteratorインターフェースを実装するクラスはrewindメソッドを必ず定義する必要があるため、EmptyIteratorにも存在しますが、処理内容は空となります。このメソッドは値を返さず、戻り値の型はvoidです。

構文(syntax)

1<?php
2
3$iterator = new EmptyIterator();
4$iterator->rewind();

引数(parameters)

引数なし

引数はありません

戻り値(return)

戻り値なし

戻り値はありません

【PHP8.x】rewindメソッドの使い方 | いっしー@Webエンジニア