Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】CURRENT_AS_FILEINFO定数の使い方

CURRENT_AS_FILEINFO定数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

CURRENT_AS_FILEINFO定数は、PHPのGlobIteratorクラスにおいて、イテレータが要素を返す形式を指定する定数です。GlobIteratorは、ファイルシステム上で特定のパターンに一致するファイルやディレクトリを効率的に走査するためのクラスです。

この定数をGlobIteratorのコンストラクタの第二引数(flags)に指定すると、イテレータは反復処理の際に各要素をSplFileInfoオブジェクトとして返します。SplFileInfoオブジェクトは、ファイルパスに加え、ファイルのサイズ、最終更新日時、パーミッション、ファイルタイプなど、ファイルに関する詳細な属性情報を提供します。

この定数を利用することで、ファイルリストを処理する際に、単なるファイル名だけでなく、各ファイルの属性情報(例えば、更新日時やサイズ)に基づいてより高度な処理を実現できます。ファイルパスのみを返すオプションよりも、豊富な情報を簡単に操作できるため、アプリケーションの柔軟性と表現力向上に貢献します。

構文(syntax)

1<?php
2$iterator = new GlobIterator(__DIR__ . '/*.php', GlobIterator::CURRENT_AS_FILEINFO);
3
4foreach ($iterator as $file) {
5    echo $file->getFilename() . PHP_EOL;
6}

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

GlobIterator::CURRENT_AS_FILEINFO は、GlobIterator で現在の要素を SplFileInfo オブジェクトとして取得するための定数です。この定数は整数値 2 を返します。