注意事項
PHP8上級・準上級試験の勉強途中で、学んだものなので、間違っているかもしれません。
ご理解よろしくおねがいします。
autoloadの基本的な使い方
▼ index.php
require __DIR__ . '/vendor/autoload.php';
$log = new Monolog\Logger('name');
$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Level::WARNING));
$log->warning('Foo');
▼ composer.json
{
"autoload": {
"psr-4": {"Acme\\": "src/"}
}
}
解説
index.php
requireを使って、composerでインストールしたパッケージの読み込みを行う
ログ出力
$log = new Monolog\Logger('name');
$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Level::WARNING));
$log->warning('Foo');
ルートに`app.log`というファイルで、ログが出力される
[2025-05-14T01:01:08.081400+00:00] name.WARNING: Hello World! []
composer.json
autoloadの中に、psr-4を追加し、その中に{<エイリアス>: <パス>}
を記述
複数可能
autoload設定の反映には、composer dump-autoload
を実行することで反映される
※ Acmeは、架空の企業名らしく、ここには開発者任意の文字列を入れることができる("MyApp", "MyPrj" etc...)