laravelでcontrollerを階層化したい時の留意点についてです。
階層化する場合はartisanコマンドでcontrollerを作る
laravelのcontrollerはartisanコマンドで作らずとも手動で作ることもできます。
ですが、controllerディレクトリ直下にcontrollerを配置しない場合は、
つまりcontrollerを階層化したい場合はartisanコマンドで作る必要があります。
手動で階層化してしまった場合、phpは階層化したクラスを参照できなくなりエラーが起きます。
手動で階層化されたphpクラスはcomposerによってロードしてもらえないからです。
(controller直下のファイルは手動でも読み込んでくれる)
階層化したcontrollerをartisanで作る
artisanコマンドで階層化したcontrollerを作るには以下のようにコマンドを打ちます。
php artisan make:controller FanctionColor/RedController
これでapp\http\controllerの下にfacntionColorというディレクトリができ、
その下にRedControllerができます。
あとはルーティングに正しく記述すれば階層化したcontrollerが読み込めるはずです。