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

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

作成日: 更新日:

基本的な使い方

getFilenameメソッドは、PHPのDirectoryIteratorクラスが提供する機能の一つで、現在のイテレータが指すファイルシステムエントリのファイル名を取得するメソッドです。DirectoryIteratorは、指定されたディレクトリのコンテンツ(ファイルやサブディレクトリ)を効率的に反復処理するために使用されるクラスです。このメソッドは、その反復処理中に現在アクセスしているファイルやディレクトリの名前を文字列形式で返します。

例えば、あるディレクトリ内のファイルリストを作成したい場合や、ファイル名に基づいて特定のファイルを検索したり、条件分岐を行ったりする際に、このgetFilenameメソッドが非常に役立ちます。戻り値は、フルパスではなく、あくまでファイルやディレクトリの最終的な名前部分(basename)であり、常に文字列型(string)となります。このメソッドは引数を一切取りません。また、ディレクトリ内の特殊なエントリである「.」(現在のディレクトリ)や「..」(親ディレクトリ)も、その名前として取得されることを理解しておくと良いでしょう。ファイルシステムをプログラムで操作する際に、個々のファイルやディレクトリの名前を正確に把握するための基本的な機能として、初心者の方にも簡単に利用できるでしょう。

構文(syntax)

1<?php
2// 現在のディレクトリにあるファイルとディレクトリのリストを取得するイテレータを作成
3$iterator = new DirectoryIterator(__DIR__);
4
5// イテレータをループし、各項目についてファイル名を取得して表示する
6foreach ($iterator as $fileInfo) {
7    // getFilename() メソッドは、現在の項目(ファイルまたはディレクトリ)の名前を文字列として返します
8    echo $fileInfo->getFilename() . PHP_EOL;
9}
10?>

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

DirectoryIterator::getFilename は、現在のディレクトリ内のエントリ(ファイルまたはサブディレクトリ)の名前を文字列で返します。

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