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

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

作成日: 更新日:

基本的な使い方

currentメソッドは、イテレータが現在指している要素の値を取得して返す処理を実行するメソッドです。このメソッドは、PHPの標準インターフェースであるIteratorで定義されており、イテレータを操作する際の基本的な機能の一つです。NoRewindIteratorは、内部的に保持している別のイテレータ(インナーイテレータ)の動作をラップしますが、currentメソッドを呼び出すと、その内部イテレータのcurrentメソッドが実行され、その結果がそのまま返されます。これにより、イテレーションの現在の位置にある値を確認することが可能です。currentメソッドを呼び出しても、イテレータの内部ポインタは移動しません。そのため、次にnextメソッドが呼び出されるまでは、何度currentメソッドを呼び出しても同じ値が返されます。NoRewindIteratorの主な特徴はrewindメソッドの呼び出しを抑止することにありますが、currentメソッドの振る舞い自体は、ラップしているイテレータのそれと変わりません。

構文(syntax)

1<?php
2
3$array = ['Apple', 'Banana', 'Cherry'];
4$iterator = new NoRewindIterator(new ArrayIterator($array));
5
6$iterator->next();
7
8$currentValue = $iterator->current();
9
10var_dump($currentValue);
11
12?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

mixed

現在のイテレータ位置にある要素を返します。

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