Laravel представляет собой PHP фреймворк, реализующий подход MVC. В Laravel есть контроллеры, представления и модели. Также этот фреймворк предоставляет удобный роутинг, встроенный шаблонизатор, св... Читать дальше
Справочник по LARAVEL
Давайте установим фреймворк. Я рекомендую делать это через composer (другие варианты см. в документации). Для начала в терминале перейдите в папку вашего сервера. Затем выполните следующую команду,... Читать дальше
Настройки работы с БД хранятся в файле config/database.php. Здесь вы можете указать все используемые вами соединения к БД, а также задать соединение по умолчанию. Примеры настройки большинства поддерж... Читать дальше
В Laravel вместо функции var_dump можно использовать специальные функции dd и dump. Функция dd (Dump and Die) выводит данные на экран и вызывает die, блокируя дальнейшее выполнение кода: <?ph... Читать дальше
Рекомендую вам установить специальную панель laravel-debugbar. Данная панель - удобный инструмент, позволяющий контролировать и отлаживать код. Вы всегда будете в курсе того, сколько произошло SQL ... Читать дальше
Маршруты (или роуты) указывают фреймворку, что показывать при обращении к определенному URI в браузере. Маршруты настраиваются в файле routes/web.php. Изначально там уже есть вот такой маршрут: ... Читать дальше
Можно сделать так, чтобы Laravel сам разбивал URI так, чтобы его отдельные части попадали в заданные переменные. Для этого предназначены параметры маршрутов. Давайте посмотрим на примере. Пусть у н... Читать дальше
В маршрутах можно указывать несколько параметров. Смотрите пример: <?php Route::get('/post/{catId}/{postId}', function ($catId, $postId) { return $catId . ' ' . $postId; }); ?>... Читать дальше
Параметры маршрутов можно объявлять не обязательными. Давайте посмотрим на примере. Пусть у нас есть следующий маршрут: <?php Route::get('/posts/page/{page}', function ($page) { return 'стр... Читать дальше
Как правило мы бы хотели наложить на параметры маршрутов некоторые ограничения. Давайте посмотрим на примере. Пусть у нас есть следующий маршрут: <?php Route::get('/post/{id}', function ($id) ... Читать дальше
Ограничения можно накладывать на несколько параметров. Для этого нужно вызвать несколько методов where в виде цепочки. Посмотрим на примере. Пусть у нас дан следующий маршрут с несколькими параметр... Читать дальше
Не очень удобно каждый раз для ограничения параметров прописывать одни и те же регулярки. Поэтому для популярных ограничений в Laravel созданы специальные методы. Давайте их рассмотрим. Следующий м... Читать дальше
Можно сделать так, чтобы параметр с определенным именем всегда имел заданное ограничение в любых маршрутах. Это нужно прописовать в методе boot класса RouteServiceProvider. Давайте для примера зада... Читать дальше
Laravel проверяет маршруты по порядку их записи. Если найден подходящий маршрут, то дальнейшая проверка прекращается. Из-за этого маршруты могут конфликтовать друг с другом. Например, в следующем п... Читать дальше
Можно группировать маршруты, адреса которых начинаются на одинаковую часть. Давайте посмотрим на примере. Пусть у нас есть такие адреса: <?php Route::get('/blog/post/all', function ($id) { ... Читать дальше
Маршрутам можно давать имена. Эти имена в дальнейшем могут быть использованы для различных целей. Давайте посмотрим на примере. Пусть дан такой маршрут: <?php Route::get('/post/all', function ... Читать дальше
Как правило маршруты, создаваемые в файле routes/web.php не будут сами обрабатывать запрос, а отправят его на определенное действие заданного контроллера. Контроллеры размещаются в папке app/Http/C... Читать дальше
Давайте теперь в файле с роутами будем делать так, чтобы маршруты обрабатывались заданными контроллерами. Для этого вторым параметром метода get нужно передать массив, состоящий из двух элементов: ... Читать дальше
Создавать контроллеры вручную не очень эффективно. Лучше использовать для этого генератор кода artisan. Он автоматически создаст файл с нужным классом и пропишет в нем пространство имен и нужные завис... Читать дальше
Давайте теперь добавим к нашему маршруту параметр: <?php Route::get('/post/{id}', [PostController::class, 'show']); ?> Переданный параметр будет попадать в параметр метода нашего действия... Читать дальше