【PHP8.x】spl_autoload_extensions関数の使い方

作成日: 更新日:

spl_autoload_extensions関数は、PHPのオートロード機能がファイルを自動的に読み込む際に、対象とするファイルの拡張子を設定したり、現在設定されている拡張子を取得したりする関数です。

PHPのオートロード機能とは、クラスやインターフェース、トレイトなどの定義が必要になったときに、そのファイルを自動的に見つけて読み込む仕組みのことです。これにより、開発者は手動でrequireinclude文を書く手間を省き、コードの管理を効率化できます。この関数は、spl_autoload_register()で登録される標準のオートロード関数(spl_autoload())が対象とするファイル拡張子を制御するために使用されます。

引数を指定せずにこの関数を呼び出すと、現在設定されている拡張子のリストが文字列の配列として返されます。デフォルトでは.php拡張子が対象です。新しい拡張子を設定したい場合は、カンマ区切りの文字列、または文字列の配列を引数として渡します。これにより、以前設定されていたリストが上書きされ、その古いリストが戻り値として返されます。例えば、.incなどの拡張子を持つファイルもオートロードの対象に含めることができます。

システムエンジニアを目指す初心者の方には、この関数を使うことで、.php以外の拡張子を持つクラス定義ファイルもPHPが自動的に読み込むように設定できると覚えておくと良いでしょう。特定のライブラリやフレームワークが独自の拡張子を使用している場合に便利です。

基本的な使い方

構文(syntax)

<?php
spl_autoload_extensions(".php,.inc");

引数(parameters)

?string $file_extensions = null

  • ?string $file_extensions: SPL オートローダーに登録するファイル拡張子をカンマ区切りで指定する文字列。null の場合は、デフォルトの拡張子(php, inc, php3, phtml)が使用されます。

戻り値(return)

string|array<string>

この関数は、SPLオートローダーが認識する拡張子を文字列または文字列の配列で返します。

【PHP8.x】spl_autoload_extensions関数の使い方 | いっしー@Webエンジニア