準備
composer はコマンドで実行できる前提として以下のファイルを用意する。
今回は psr4に準拠したファイルではなくシンプルな単一のphpファイルを対象とする。
- composer.json
- hello.php
- main.php
composer.json
{
"autoload": {
"files": ["hello.php"]
}
}
hello.php
<?php
function Hello(){
echo "Hello World";
}
main.php
<?php
require_once "vendor/autoload.php";
Hello();
説明
composer dumpautoload のコマンドを実行すると “Generating autoload files” が表示され、実行したディレクトリ内に下記構成の「Vendor」ディレクトリが作成される。
Vendor/
├ composer/
│├ autoload_classmap.php
│├ autoload_files.php
│├ autoload_namespaces.php
│├ autoload_psr4.php
│├ autoload_real.php
│├ autoload_static.php
│├ ClassLoader.php
│└ LICENSE
└ autoload.php
composer
autoloadの仕組みを構成するファイルとライセンスが配置される。
これらのファイルを読み込む必要はない。
autoload.php
このファイルを require_once などで読み込むことにより autoload の対象にしたファイルを全て読み込める。
実行結果
main.phpを実行すると以下のように表示される。
Hello World