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

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

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

作成日: 更新日:

基本的な使い方

getBasenameメソッドは、PHPのRecursiveDirectoryIteratorオブジェクトが現在指している、ファイルまたはディレクトリのベースネームを取得するメソッドです。RecursiveDirectoryIteratorは、指定されたディレクトリとそのサブディレクトリを再帰的に走査するためのイテレータであり、このgetBasenameメソッドはその走査中に取得したパス情報から、ファイル名やディレクトリ名といった末尾の部分を簡潔に取り出すために利用されます。

このメソッドはオプションで一つの引数$suffixを受け取ることができます。$suffixに文字列を指定すると、取得されるベースネームの末尾がその文字列と一致した場合、その接尾辞が取り除かれた形でベースネームが返されます。例えば、「my_document.txt」というファイル名に対して$suffixとして「.txt」を指定すると、「my_document」が戻り値として得られます。$suffixを指定しない場合や、指定された$suffixがベースネームの末尾と一致しない場合は、接尾辞が取り除かれることなく、完全なファイル名またはディレクトリ名がそのまま返されます。

この機能により、ファイル拡張子を考慮に入れたファイル名の抽出や、特定のパターンを持つファイル名の一括処理などが容易になります。戻り値は常に文字列型で、抽出されたファイル名またはディレクトリ名を表します。

構文(syntax)

1<?php
2
3$iterator = new RecursiveDirectoryIterator(__DIR__);
4
5foreach ($iterator as $fileInfo) {
6    $basename = $fileInfo->getBasename();
7    break;
8}

引数(parameters)

?string $suffix = null

  • ?string $suffix = null: ファイル名に追加する接尾辞を指定します。指定しない場合は、ファイル名のみが返されます。

戻り値(return)

string

現在のディレクトリのベース名(ファイル名またはディレクトリ名のみ)を文字列として返します。