【PHP8.x】nextメソッドの使い方
nextメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
『nextメソッドは、イテレータを次の要素に進めるために実行するメソッドです。このメソッドは、IteratorIteratorクラスが内部で保持している別のイテレータオブジェクトのnextメソッドを呼び出す役割を持ちます。IteratorIteratorは、既存のイテレータをラップして利用するためのクラスであり、このメソッドの動作も、ラップされた元のイテレータの動作に依存します。foreach文などの繰り返し処理構文が使用される際、ループが次の要素へ移るたびにPHPエンジンによって内部的にこのメソッドが呼び出されます。このメソッドの目的は、イテレータの内部ポインタを現在の位置から一つ先へ移動させることのみに特化しているため、何も値を返しません。返り値の型はvoidとなります。イテレータを正しく動作させるための一連の処理、すなわちrewindメソッドで先頭に戻り、validメソッドで要素の存在を確認し、currentメソッドで値を取得し、そしてnextメソッドで次に進む、というサイクルの中で重要なステップを担っています。これにより、コレクションの要素を順番にたどることが可能になります。』
構文(syntax)
1<?php 2 3// 元となるイテレータを用意します 4$arrayIterator = new ArrayIterator(['Apple', 'Banana', 'Cherry']); 5 6// IteratorIteratorのインスタンスを作成します 7$iterator = new IteratorIterator($arrayIterator); 8 9// 内部ポインタを先頭に移動させます 10$iterator->rewind(); // 現在地: 'Apple' 11 12// 内部ポインタを次の要素に進めます 13$iterator->next(); // 現在地: 'Banana' 14 15// 現在の要素を出力します 16echo $iterator->current(); // "Banana" 17
引数(parameters)
引数なし
引数はありません
戻り値(return)
戻り値なし
戻り値はありません