If your application gets bigger, it makes sense to structure Controllers with sub-folders. But it takes a little more effort than just moving the files here and there. Let me explain the structure.
For example, we want to have a sub-folder app/Http/Controllers/Admin and then inside of it we have our AdminController.php, that’s fine. What we need to do inside of the file itself:
1. Correct namespace – specify the inner folder:
2. Use Controller – from your inner-namespace Laravel won’t “understand” extends Controller, so you need to add this:
3. Routes – specify full path
This wouldn’t work anymore:
This is the correct way:
And that’s it – now you can use your controller from sub-folder.