https://qiita.com/ucan-lab/items/c1e561d20cc591966c25
$ php artisan config:cache
$ php artisan route:cache
$ composer dump-autoload -o
$ php artisan optimize
debugオプションがtrueの場合でもcompiled.phpファイルを生成したい場合は、forceオプションを付け、実行してください。
php artisan optimize --force
php artisan route:cache
php artisan optimize --force
エラーになる
$ php artisan route:cache
Route cache cleared!
LogicException
Unable to prepare route [api/user] for serialization. Uses Closure.
at vendor/laravel/framework/src/Illuminate/Routing/Route.php:1150
Laravel を deployer でデプロイ時に LogicException が出た - Qiita
クロージャを使っていると、キャッシュ化出来ないらしい。
composer dump-autoload
オートロード
PHP開発でComposerを使わないなんてありえない!基礎編 - Qiita
composer require A
と打てば、Aと同時に必要なライブラリ群を参照して一緒にダウンロードしてくれるのです
composerを使用してライブラリをインストールすると、vendor/autoload.phpというファイルが生成され、このファイルをrequireすることで、vendor配下のライブラリをオートロードできるように設定してくれる
オートロードの設定を後から付け加えた場合は、composer dump-autoloadとしてやることで、vendor/autoload.phpに設定を加える事ができます
インストールされたライブラリの情報はcomposer.jsonに記載され、実際に何をインストールしたかの情報がcomposer.lockに記載されます
require_once 'vendor/autoload.php';
この1行だけで、composerが管理するライブラリを読み込めます。
PHP|【パッケージ管理】Composerの使い方 - わくわくBank
名前空間 | PSR-4
psr-4では、「名前空間」と「composer.jsonの存在するディレクトリからの相対パス」の対応付けを行います。
下記例では、Appから始まる名前空間のクラスへアクセスした際に、appディレクトリ配下から対応するクラスファイルを探してロードします。
"autoload": {
"psr-4": {
"App\\": "app/"
}
},
なお、autoloadセクションを編集した場合、下記コマンドを実行して変更を反映させる必要があります。
$ composer dump-autoload
illuminate(を明らかにする)の場所
ここ
Session や Log などのメソッドが置いてある
$ ll vendor/laravel/framework/src/Illuminate/
【Laravel】Illuminateとは何か?ファイルはどこにあるのか? - Qiita
どこでこの場所をautoloadしているのかはよくわからなかった