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

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

作成日: 更新日:

基本的な使い方

getInnerIteratorメソッドは、RecursiveRegexIteratorインスタンスが内部で保持している、ラップされた元のイテレータを取得するために実行するメソッドです。RecursiveRegexIteratorクラスは、既存の再帰的なイテレータ(例えばRecursiveDirectoryIteratorなど)をコンストラクタで受け取り、そのイテレータの要素に対して正規表現によるフィルタリング機能を追加する役割を持ちます。このとき、getInnerIteratorメソッドを呼び出すと、機能を追加するために包み込んでいる内側のイテレータ、つまりコンストラクタに渡された元のRecursiveIteratorオブジェクトそのものを取得することができます。この機能は、正規表現フィルタを適用する前のデータにアクセスしたい場合や、デバッグ目的で内部イテレータの状態を直接確認したい場合に特に有用です。例えば、フィルタリング後の結果だけでなく、元のイテレータが持つ独自のメソッドを呼び出したいといった状況で利用されます。このメソッドによって、イテレータを装飾するクラスから元のオブジェクトへとアクセスする標準的な手段が提供されます。

構文(syntax)

1public RecursiveIterator::getInnerIterator(): RecursiveIterator

引数(parameters)

引数なし

引数はありません

戻り値(return)

RecursiveIterator

このメソッドは、現在のイテレータが内包しているRecursiveIteratorインスタンスを返します。