Laravel давно стал одним из самых популярных PHP-фреймворков. Его ценят за удобную архитектуру, понятную структуру проекта и богатую экосистему. Но для новичков первый шаг, создание и правильная настройка проекта, часто оказывается самым сложным.
В этой статье разберем весь процесс с нуля: от подготовки окружения до запуска первого Laravel-приложения. Без лишней теории, но с пониманием того, что и зачем вы делаете.
Что нужно перед началом работы
Перед установкой Laravel важно убедиться, что ваше окружение готово. Фреймворк не требует экзотических зависимостей, но несколько базовых вещей все же понадобятся.
PHP подходящей версии
Laravel активно использует современные возможности PHP, поэтому старая версия не подойдет. Обычно требуется PHP 8.1 или новее. Проверить текущую версию можно командой:
php -vЕсли версия ниже требуемой, стоит обновить PHP через пакетный менеджер или установить нужную версию вручную.
Composer
Composer - это менеджер зависимостей для PHP. Через него устанавливается сам Laravel и все сторонние пакеты.
Проверка установки:
composer --versionЕсли Composer не установлен, его можно добавить за несколько минут, следуя официальной инструкции.
Сервер и база данных
Для локальной разработки подойдет любой вариант:
встроенный сервер Laravel,
Apache или Nginx,
MySQL, PostgreSQL или SQLite в качестве базы данных.
На старте можно обойтись минимумом, встроенным сервером и SQLite.
Установка Laravel
Существует два основных способа создать новый Laravel-проект. Оба официальные и одинаково рабочие.
Способ 1. Через Laravel Installer
Laravel Installer - это удобная утилита, которая устанавливается глобально через Composer.
Установка инсталлятора:
composer global require laravel/installerПосле этого создаем новый проект:
laravel new my-projectИнсталлятор сам задаст несколько вопросов: какой стек использовать, нужна ли аутентификация, тесты и так далее. Для новичков можно оставить значения по умолчанию.
Способ 2. Через Composer напрямую
Если не хочется устанавливать глобальные утилиты, можно создать проект одной командой:
composer create-project laravel/laravel my-projectComposer скачает Laravel и все зависимости, после чего проект будет готов к работе.
Структура проекта: что здесь вообще лежит
После установки вы увидите довольно много папок и файлов. Это нормально т.к. Laravel сразу предлагает готовую архитектуру.
Ключевые директории:
app - основная логика приложения: контроллеры, модели, сервисы.
routes - все маршруты приложения.
resources - шаблоны, стили, JavaScript.
database - миграции, сиды и фабрики.
public - точка входа и публичные файлы.
config - конфигурация всех компонентов.
На старте не нужно разбираться во всем сразу. Достаточно понимать, где лежат маршруты, шаблоны и бизнес-логика.
Настройка окружения
Файл .env
Laravel использует файл .env для хранения настроек окружения: базы данных, ключей, режимов работы.
Сразу после установки в корне проекта есть файл .env.example. Его нужно скопировать:
cp .env.example .envПосле этого сгенерировать ключ приложения:
php artisan key:generateЭтот ключ используется для шифрования данных и работы сессий. Без него приложение не запустится корректно.
Подключение базы данных
В файле .env находим блок с настройками базы данных:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=Если вы используете SQLite, достаточно указать:
DB_CONNECTION=sqliteи создать пустой файл базы данных, например database/database.sqlite.
Запуск проекта
Самый простой способ запустить Laravel это использовать встроенный сервер.
В корне проекта выполните:
php artisan serveПо умолчанию приложение будет доступно по адресу:
http://127.0.0.1:8000Если вы видите стартовую страницу Laravel - значит все работает правильно.
Первый маршрут и страница
Чтобы лучше понять, как все связано между собой, создадим простой маршрут.
Откройте файл routes/web.php и добавьте:
Route::get('/hello', function () {
return 'Привет, Laravel!';
});Перейдите в браузере по адресу /hello и вы увидите текст, возвращаемый маршрутом.
Это самый простой пример, но он наглядно показывает, как работает маршрутизация.
Использование контроллеров
Когда логика становится сложнее, маршруты лучше выносить в контроллеры.
Создадим контроллер командой:
php artisan make:controller HelloControllerВ файле контроллера добавим метод:
public function index()
{
return view('hello');
}Теперь изменим маршрут:
Route::get('/hello', [HelloController::class, 'index']);Шаблоны и Blade
Laravel использует собственный шаблонизатор Blade. Все шаблоны хранятся в папке resources/views.
Создадим файл hello.blade.php:
<!DOCTYPE html>
<html>
<head>
<title>Первый шаблон</title>
</head>
<body>
<h1>Привет из Blade</h1>
</body>
</html>Теперь при переходе на /hello будет отображаться HTML-страница.
Миграции и работа с базой
Laravel предлагает удобный механизм миграций для управления структурой базы данных.
Создание миграции:
php artisan make:migration create_posts_tableВ файле миграции описывается структура таблицы. После этого миграции применяются командой:
php artisan migrateТаким образом структура базы всегда хранится в коде, а не только на сервере.
Что дальше
После базовой установки и настройки вы готовы двигаться дальше:
изучать Eloquent и модели,
работать с формами и валидацией,
подключать аутентификацию,
писать тесты,
собирать фронтенд с Vite.
Laravel создан так, чтобы путь от простого проекта до полноценного приложения был максимально плавным.