Laravelでコントローラーを作成した場合などに、use Illuminate\Http\Request;
といった記述がある。
これは名前空間のIlluminate\Http\Request
をインポートしているということだが、そもそもIlluminate
とはどこにあり、何なのかについて解説しています。
Illuminateはどこにあるのか?
Illuminateは、laravelでプロジェクトを作成した時に自動生成される、vendorディレクトリ配下に存在する。
vender > laravel > framework > src > Illuminate
vendorディレクトリはcomposerと依存関係にある。
Illuminateとは何か?
IlluminateはLaravelのコンポーネントが入っている。Illuminate\Http\Request
クラスの、hasメソッドのように、各クラスとメソッドが定義されている。
Laravelでデフォルトで使えるありがたいメソッドがたくさんあるのは理解できたが、その名前とマッチしなさすぎる、、
IlluminateはLaravel4のコードネームだそうで、このタイミングでcomposerを通じてframeworkをインストールするように認め、それを記念して(?)Illuminateというフォルダに格納されているらしい。(歴史を知らない人にはとにかくわかりにくい、、)
要約すると、Laravelの大事なコンポーネントが置いてある場所ということです。
参考リンク
なお、VSCodeでvendorやIlluminateやその配下のディレクトリやファイルが検索でヒットしません。
VSCodeの設定を変更することで、ファイル検索ができるようになります。詳細は下記をご参考ください。
>【Laravel】VSCodeでvendorやIlluminateやその配下のディレクトリやファイルが検索できない時の対処法。