Создание контроллеров
Как правило маршруты, создаваемые в файле routes/web.php
не будут сами обрабатывать запрос, а отправят его на определенное действие заданного контроллера.
Контроллеры размещаются в папке app/Http/Controllers
. Давайте для примера сделаем какой-нибудь контроллер, например PostController
.
Для этого в папке с контроллерами создадим файл с классом контроллера, подчиняющийся правилам автозагрузки классов.
Нашему контроллеру соответствует файл PostController.php
. Давайте создадим его и в этом файле разместим следующий код:
app/Http/Controllers/PostController.php<?php
namespace App\Http\Controllers;
class PostController extends Controller
{
}
Давайте теперь создадим действие, то есть метод нашего контроллера:
app/Http/Controllers/PostController.php<?php
class PostController extends Controller
{
public function show()
{
return 'hello world';
}
}
Генерация контроллеров через artisan
Создавать контроллеры вручную не очень эффективно. Лучше использовать для этого генератор кода artisan
. Он автоматически создаст файл с нужным классом и пропишет в нем пространство имен и нужные зависимости.
Давайте для примера создадим тот-же контроллер, только автоматически с использованием artisan
. Для этого в командной строке нужно выполнить следующий PHP код:
php artisan make:controller PostController