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

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

作成日: 更新日:

基本的な使い方

getPathInfoメソッドは、PHPのDirectoryIteratorクラスにおいて、現在イテレータが指し示しているファイルまたはディレクトリに関する詳細なパス情報を提供するSplFileInfoオブジェクトを取得するメソッドです。

DirectoryIteratorクラスは、特定のディレクトリ内のすべてのファイルやサブディレクトリを順番に処理(イテレート)するために用いられます。イテレータがディレクトリ内の各エントリに進むたびに、そのエントリに関する情報を取得したい場面が多くあります。getPathInfoメソッドは、まさにそのような状況で利用されます。

このメソッドが返すSplFileInfoオブジェクトは、ファイルやディレクトリのパス、ファイル名、拡張子、ディレクトリ名といった様々な属性を統一的に扱うための便利な機能を提供します。例えば、あるファイルのパス全体を取得したり、そのファイルの拡張子だけを取り出したり、親ディレクトリのパスを取得したりするといった操作を、このSplFileInfoオブジェクトを通じて行うことができます。

したがって、getPathInfoメソッドは、DirectoryIteratorによって取得された個々のファイルやディレクトリについて、さらに高度な情報分析や操作を行いたい場合に非常に有用です。これにより、単にファイル名を知るだけでなく、そのファイルが持つ多様なメタデータにアクセスし、プログラム内で柔軟に処理することが可能になります。

構文(syntax)

1<?php
2$directoryEntry = new DirectoryIterator('/path/to/some/directory');
3$pathInfo = $directoryEntry->getPathInfo();

引数(parameters)

?string $class = null

  • ?string $class = null: 取得したいクラス名(省略可能)。指定しない場合は、DirIterator::getPathInfo()で取得できるすべての情報が返されます。

戻り値(return)

SplFileInfo

DirectoryIterator::getPathInfo は、現在のディレクトリ要素のパス情報を含む SplFileInfo オブジェクトを返します。このオブジェクトを通じて、ファイル名、絶対パス、拡張子などの詳細な情報を取得できます。