PHPで外部ファイルを使用する場合は require_once で読み込む必要があるが、
autoloaderというのを使えば自動的に読み込まれるらしいので調べてみる。
※ 前回記事:PHP:autoloaderを使う 1
autoloaderというのを使えば自動的に読み込まれるらしいので調べてみる。
※ 前回記事:PHP:autoloaderを使う 1
Composerのインストール
composer.jsonの作成
PHPソースのルートフォルダに composer.json ファイルを新規作成する。
既にComposerを使っていてcomposer.jsonが存在する場合は "autoload" の所を追記する。
"Namespace\\": "Path/" の行は記載例なので、実際の値で記述すること。
\TestCorp\ManageSystem の名前空間を D:\www\htdocs のベースディレクトリに対応させていたので、この場合の composer.json は以下の通りである。
既にComposerを使っていてcomposer.jsonが存在する場合は "autoload" の所を追記する。
"Namespace\\": "Path/" の行は記載例なので、実際の値で記述すること。
{ "autoload": { "psr-4": { "Namespace\\": "Path/" } } }前回の例 (PHP:autoloaderを使う 1) では、
\TestCorp\ManageSystem の名前空間を D:\www\htdocs のベースディレクトリに対応させていたので、この場合の composer.json は以下の通りである。
{ "autoload": { "psr-4": { "TestCorp\\ManageSystem\\": "" } } }\TestCorp\ManageSystem の名前空間を D:\www\htdocs\include のベースディレクトリに対応される場合は以下の通り。
{ "autoload": { "psr-4": { "TestCorp\\ManageSystem\\": "include/" } } }
autoload.phpの作成
次に Composer の autoload.php ファイルを作成する。
作成するには、コマンドプロンプトで PHPソースファイルのルート(D:\www\htdocs など)に移動し "composer dump-autoload" コマンドを実行する。
以降、composer.json の autoload設定を変更した場合は、このコマンドを実行する必要がある。
コマンドを実行すると、ルートは以下に vendor フォルダが作成され、そのフォルダ配下に "autoload.php" が作成される。
PHPソースからは、このファイルを require_once でロードすれば良い。
作成するには、コマンドプロンプトで PHPソースファイルのルート(D:\www\htdocs など)に移動し "composer dump-autoload" コマンドを実行する。
以降、composer.json の autoload設定を変更した場合は、このコマンドを実行する必要がある。
コマンドを実行すると、ルートは以下に vendor フォルダが作成され、そのフォルダ配下に "autoload.php" が作成される。
PHPソースからは、このファイルを require_once でロードすれば良い。
-- 以上 --
PHP学習, PSR-4
0 件のコメント:
コメントを投稿