Установка
- Встречайте Laravel
- Почему именно Laravel?
- Создание проекта Laravel
- Начальная конфигурация
- Конфигурация на основе окружения
- Базы данных и миграции
- Конфигурация каталога
- Локальная установка с использованием Herd
- Herd на macOS
- Herd на Windows
- Установка Docker с использованием Sail
- Sail на macOS
- Sail на Windows
- Sail на Linux
- Выбор сервисов Sail
- Поддержка IDE
- Следующие шаги
- Laravel как клиент-серверный фреймворк
- Laravel в качестве сервера API
Встречайте Laravel
Laravel — это веб-фреймворк с выразительным и элегантным синтаксисом. Он предоставляет структуру и отправную точку для разработки приложений, позволяя сосредоточиться на создании чего-то уникального. Но пока не будем углубляться в детали.
Laravel нацелен на то, чтобы сделать процесс разработки максимально приятным, при этом предлагая мощные возможности: удобное внедрение зависимостей, выразительные абстракции для работы с базами данных, очереди и планировщик задач, поддержку модульного и интеграционного тестирования и многое другое.
Будь вы новичком в PHP, веб-фреймворках или опытным разработчиком с многолетним стажем, Laravel — это фреймворк, который будет развиваться вместе с вами. Мы поможем вам сделать первые шаги в веб-разработке или предложим способы улучшить ваши навыки. Мы с нетерпением ждём того, что вы создадите!
Новичок в Laravel? Посетите Laravel Bootcamp для практического тура по фреймворку, во время которого мы проведем вас через создание вашего первого приложения Laravel.
Почему именно Laravel?
При разработке веб-приложений у вас есть множество инструментов и фреймворков на выбор. Однако мы уверены, что Laravel — лучший выбор для создания современных и полнофункциональных веб-приложений.
Прогрессивный фреймворк
Мы любим называть Laravel «прогрессивным» фреймворком. Это означает, что Laravel развивается вместе с вами. Если вы начинающий разработчик, обширная библиотека документации, руководств и видеоуроков Laravel поможет вам освоить основы, не перегружая сложными концепциями.
Если вы опытный разработчик, Laravel предлагает мощные инструменты для внедрения зависимостей, модульного тестирования, работы с очередями, реального времени и многое другое. Laravel создан для разработки профессиональных веб-приложений и способен справляться с корпоративными задачами.
Масштабируемый фреймворк
Laravel невероятно масштабируем. Благодаря удобному для масштабирования характеру PHP и встроенной поддержке быстрых распределенных систем кеширования, таких как Redis, горизонтальное масштабирование с Laravel очень просто. Фактически, приложения Laravel легко масштабируются для обработки сотен миллионов запросов в месяц.
Требуется экстремальное масштабирование? Такие платформы, как Laravel Vapor, позволяют запускать приложение Laravel в практически неограниченном масштабе с использованием новейшей бессерверной технологии AWS.
Фреймворк сообщества
Laravel объединяет лучшие пакеты в экосистеме PHP, чтобы предложить наиболее надёжный и удобный для разработчиков фреймворк. Более того, тысячи талантливых разработчиков со всего мира внесли свой вклад в его развитие. Кто знает, возможно, вы тоже станете частью сообщества Laravel.
Создание проекта Laravel
Перед созданием вашего первого проекта Laravel убедитесь, что на вашем локальном компьютере установлены PHP и Composer. Если вы разрабатываете на macOS или Windows, то PHP, Composer, Node и NPM можно установить всего за несколько минут с помощью Laravel Herd.
После установки PHP и Composer вы можете создать новый проект Laravel с помощью команды create-project
от Composer:
composer create-project laravel/laravel example-app
Или вы можете создавать новые проекты Laravel, установив глобально Laravel installer с помощью Composer. Установщик Laravel позволяет вам выбрать предпочитаемую среду тестирования, базу данных и стартовый комплект при создании новых приложений:
composer global require laravel/installer
laravel new example-app
После создания проекта запустите локальный сервер разработки Laravel с помощью команды serve
в Laravel Artisan:
cd example-app
php artisan serve
После запуска сервера разработки Artisan ваше приложение будет доступно в вашем веб-браузере по адресу http://localhost:8000. Теперь вы готовы продолжить свои первые шаги в мире Laravel. Конечно же, вы также можете настроить базу данных.
Если вы хотите начать разработку вашего приложения Laravel с хорошим стартом, рассмотрите использование одного из наших стартовых комплектов. Стартовые комплекты Laravel предоставляют инфраструктуру для аутентификации как на сервере, так и на клиенте для вашего нового приложения Laravel.
Начальная конфигурация
Все файлы конфигурации Laravel хранятся в каталоге config
. Каждый параметр снабжён комментариями, поэтому не стесняйтесь просматривать файлы и знакомиться с доступными вам опциями.
Laravel почти не требует дополнительной настройки сразу после установки. Вы можете начать разработку прямо сейчас! Тем не менее рекомендуется просмотреть файл config/app.php
и его комментарии. В этом файле содержатся параметры, такие как часовой пояс и локаль, которые можно настроить в соответствии с требованиями вашего приложения.
Конфигурация на основе окружения
Поскольку многие значения параметров конфигурации Laravel могут меняться в зависимости от того, работает ли ваше приложение на локальном компьютере или на сервере в продакшене, важные параметры конфигурации задаются в файле .env
, который находится в корне вашего приложения.
Файл .env
не следует добавлять в систему контроля версий вашего приложения, так как различные разработчики и серверы могут требовать разные настройки окружения. Кроме того, размещение этого файла в репозитории может представлять угрозу безопасности, если злоумышленник получит доступ к вашему репозиторию, так как конфиденциальные данные могут быть раскрыты.
Для получения дополнительной информации о конфигурации на основе файла
.env
и окружения ознакомьтесь с документацией по конфигурации.
Базы данных и миграции
После создания приложения Laravel, возможно, вам потребуется сохранить данные в базе данных. По умолчанию файл конфигурации .env
указывает, что Laravel использует базу данных SQLite.
При создании проекта Laravel автоматически создаёт файл database/database.sqlite
и выполняет необходимые миграции для создания таблиц базы данных.
Если вы предпочитаете использовать другой драйвер базы данных, такой как MySQL или PostgreSQL, вы можете обновить файл .env
, чтобы указать соответствующую базу данных. Например, для использования MySQL измените переменные DB_*
в файле .env
следующим образом:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
Если вы выберете базу данных, отличную от SQLite, вам нужно будет создать базу данных и выполнить миграцию базы данных вашего приложения:
php artisan migrate
Если вы разрабатываете для macOS или Windows и вам необходимо установить MySQL, PostgreSQL или Redis локально, рассмотрите возможность использования Herd Pro.
Конфигурация каталога
Laravel всегда должен обслуживаться из корня веб-каталога, настроенного для вашего веб-сервера. Не пытайтесь обслуживать приложение Laravel из поддиректории, так как это может привести к открытию доступа к конфиденциальным файлам в вашем приложении.
Локальная установка с использованием Herd
Laravel Herd — это невероятно быстрая встроенная среда разработки Laravel и PHP для macOS и Windows. Herd включает в себя все необходимое для начала разработки на Laravel, включая PHP и Nginx.
После установки Herd вы готовы начать разработку с помощью Laravel. Herd включает инструменты командной строки для php
, composer
, laravel
, expose
, node
, npm
и nvm
.
Herd Pro дополняет Herd дополнительными мощными функциями, такими как возможность создания и управления локальными базами данных MySQL, Postgres и Redis, а также локальный просмотр почты и мониторинг журналов.
Herd на macOS
Если вы занимаетесь разработкой на macOS, вы можете загрузить установщик Herd с веб-сайта Herd. Установщик автоматически загружает последнюю версию PHP и настраивает ваш Mac для постоянного запуска Nginx в фоновом режиме.
Herd для macOS использует dnsmasq для поддержки «припаркованных» каталогов. Любое приложение Laravel в припаркованном каталоге будет автоматически обслуживаться Herd. По умолчанию Herd создает припаркованный каталог в ~/Herd
, и вы можете получить доступ к любому приложению Laravel в этом каталоге в домене .test
, используя его имя каталога.
После установки Herd самый быстрый способ создать новый проект Laravel — использовать Laravel CLI, который входит в состав Herd:
cd ~/Herd
laravel new my-app
cd my-app
herd open
Конечно, вы всегда можете управлять своими припаркованными каталогами и другими настройками PHP через пользовательский интерфейс Herd, который можно открыть из меню Herd на панели задач.
Вы можете узнать больше о Herd, просмотрев документацию Herd.
Herd на Windows
Вы можете загрузить установщик Windows для Herd на веб-сайте Herd. После завершения установки вы можете запустить Herd, чтобы завершить процесс регистрации и впервые получить доступ к пользовательскому интерфейсу Herd.
Доступ к пользовательскому интерфейсу Herd можно получить, щелкнув левой кнопкой мыши значок Herd на панели задач. Щелчок правой кнопкой мыши открывает быстрое меню с доступом ко всем инструментам, которые вам нужны ежедневно.
Во время установки Herd создает «припаркованный» каталог в вашем домашнем каталоге %USERPROFILE%\Herd
. Любое приложение Laravel в припаркованном каталоге будет автоматически обслуживаться Herd, и вы можете получить доступ к любому приложению Laravel в этом каталоге в домене .test
, используя его имя каталога.
После установки Herd самый быстрый способ создать новый проект Laravel — использовать CLI Laravel, который входит в состав Herd. Для начала откройте Powershell и выполните следующие команды:
cd ~\Herd
laravel new my-app
cd my-app
herd open
Вы можете узнать больше о Herd, просмотрев документацию Herd для Windows.
Установка Docker с использованием Sail
Мы хотим, чтобы начало работы с Laravel было максимально простым, независимо от вашей предпочтительной операционной системы. Поэтому существует несколько вариантов для разработки и запуска проекта Laravel на вашем локальном компьютере. Хотя вы можете изучить эти варианты позже, Laravel предоставляет Sail, встроенное решение для запуска проекта Laravel с использованием Docker.
Docker – это инструмент для запуска приложений и служб в небольших легковесных “контейнерах”, которые не вмешиваются в установленное программное обеспечение или конфигурацию вашего локального компьютера. Это означает, что вам не нужно беспокоиться о настройке сложных инструментов разработки, таких как веб-серверы и базы данных на вашем локальном компьютере. Для начала вам нужно только установить Docker Desktop.
Laravel Sail – это легкий интерфейс командной строки для взаимодействия с конфигурацией Docker по умолчанию Laravel. Sail предоставляет отличную отправную точку для создания приложения Laravel с использованием PHP, MySQL и Redis, не требуя опыта работы с Docker.
Уже являетесь экспертом по Docker? Не волнуйтесь! Все в Sail можно настроить с помощью файлов
docker-compose.yml
, включенных в Laravel.
Sail на macOS
Если вы разрабатываете на Mac, и Docker Desktop уже установлен, вы можете использовать простую команду в терминале, чтобы создать новый проект Laravel. Например, чтобы создать новое приложение Laravel в каталоге с именем “example-app”, вы можете выполнить следующую команду в терминале:
curl -s "https://laravel.build/example-app" | bash
Конечно, вы можете изменить “example-app” в этом URL на что угодно, лишь бы имя приложения содержало только буквенно-цифровые символы, дефисы и подчеркивания. Директория приложения Laravel будет создана в том каталоге, из которого вы выполнили эту команду.
Установка Sail может занять несколько минут, пока контейнеры приложения Sail будут созданы на вашем локальном компьютере.
После создания проекта вы можете перейти в директорию приложения и запустить Laravel Sail. Laravel Sail предоставляет простой интерфейс командной строки для взаимодействия с конфигурацией Docker по умолчанию:
cd example-app
./vendor/bin/sail up
После запуска контейнеров Docker приложения вам следует запустить миграции базы данных:
./vendor/bin/sail artisan migrate
Наконец, вы можете получить доступ к приложению в своем веб-браузере по адресу: http://localhost.
Чтобы продолжить изучение Laravel Sail, ознакомьтесь с его полной документацией.
Sail на Windows
Прежде чем создавать новое приложение Laravel на вашем компьютере с Windows, убедитесь, что установлен Docker Desktop. Затем убедитесь, что установлен и включен
Windows Subsystem for Linux 2 (WSL2). WSL позволяет запускать исполняемые файлы Linux нативно на Windows 10. Информацию о том, как установить и включить WSL2, можно найти в документации среды разработки Microsoft.
После установки и включения WSL2 убедитесь, что Docker Desktop настроен для использования бэкенда WSL2.
Затем вы готовы создать свой первый проект Laravel. Запустите Windows Terminal и начните новую сессию терминала для вашей операционной системы WSL2 Linux. Затем вы можете использовать простую команду в терминале, чтобы создать новое приложение Laravel. Например, чтобы создать новое приложение Laravel в каталоге с именем “example-app”, вы можете выполнить следующую команду в терминале:
curl -s https://laravel.build/example-app | bash
Конечно, вы можете изменить “example-app” в этом URL на что угодно, лишь бы имя приложения содержало только буквенно-цифровые символы, дефисы и подчеркивания. Директория приложения Laravel будет создана в том каталоге, из которого вы выполнили эту команду.
Установка Sail может занять несколько минут, пока контейнеры приложения Sail будут созданы на вашем локальном компьютере.
После создания проекта вы можете перейти в директорию приложения и запустить Laravel Sail. Laravel Sail предоставляет простой интерфейс командной строки для взаимодействия с конфигурацией Docker по умолчанию:
cd example-app
./vendor/bin/sail up
После запуска контейнеров Docker приложения вам следует запустить миграции базы данных:
./vendor/bin/sail artisan migrate
Наконец, вы можете получить доступ к приложению в своем веб-браузере по адресу: http://localhost.
Чтобы продолжить изучение Laravel Sail, ознакомьтесь с его полной документацией.
Разработка в WSL2
Конечно, вам потребуется иметь возможность изменять файлы приложения Laravel, созданные в вашей установке WSL2. Для этого мы рекомендуем использовать редактор Visual Studio Code от Microsoft и их официальное расширение Remote Development для удаленной разработки.
После установки этих инструментов вы можете открыть любой проект Laravel, выполнив команду code .
из корневой директории вашего приложения с использованием Windows Terminal.
Sail на Linux
Если вы разрабатываете на Linux и у вас уже установлен Docker Compose, вы можете использовать простую команду терминала для создания нового проекта Laravel.
Сначала, если вы используете Docker Desktop для Linux, вам следует выполнить следующую команду. Если вы не используете Docker Desktop для Linux, этот шаг можно пропустить:
docker context use default
Затем, чтобы создать новое приложение Laravel в директории с названием “example-app”, вы можете выполнить следующую команду в терминале:
curl -s https://laravel.build/example-app | bash
Конечно, вы можете изменить “example-app” в этом URL на любое другое имя, просто убедитесь, что имя приложения содержит только буквенно-цифровые символы, дефисы и подчеркивания. Директория приложения Laravel будет создана в той директории, из которой вы выполните команду.
Установка Sail может занять несколько минут, пока контейнеры приложения Sail строятся на вашем локальном компьютере.
После создания проекта вы можете перейти в директорию приложения и запустить Laravel Sail. Laravel Sail предоставляет простой интерфейс командной строки для взаимодействия с настройками Docker по умолчанию для Laravel:
cd example-app
./vendor/bin/sail up
После запуска контейнеров Docker приложения вам следует запустить миграции базы данных:
./vendor/bin/sail artisan migrate
Наконец, вы можете получить доступ к приложению в своем веб-браузере по адресу: http://localhost.
Чтобы узнать больше о Laravel Sail, ознакомьтесь с его полной документацией.
Выбор сервисов Sail
При создании нового приложения Laravel через Sail вы можете использовать переменную строки запроса with
для выбора того, какие сервисы должны быть настроены в файле docker-compose.yml
вашего нового приложения. Доступные сервисы включают mysql
, pgsql
, mariadb
, redis
, memcached
, meilisearch
, typesense
, minio
, selenium
и mailpit
:
curl -s "https://laravel.build/example-app?with=mysql,redis" | bash
Если вы не укажете, какие сервисы вы хотели бы настроить, будет настроен стандартный стек из mysql
, redis
, meilisearch
, mailpit
и selenium
.
Вы можете указать Sail установить стандартный Devcontainer, добавив параметр devcontainer
в URL:
curl -s "https://laravel.build/example-app?with=mysql,redis&devcontainer" | bash
Поддержка IDE
Вы можете использовать любой редактор кода при разработке приложений Laravel; однако PhpStorm предлагает обширную поддержку для Laravel и его экосистемы, включая Laravel Pint.
Кроме того, поддерживаемый сообществом плагин PhpStorm Laravel Idea предлагает различные полезные дополнения для IDE, включая генерацию кода, автодополнение синтаксиса Eloquent, автодополнение правил валидации и многое другое.
Следующие шаги
Теперь, когда вы создали свой проект Laravel, возможно, вам интересно, что изучить дальше. Во-первых, мы настоятельно рекомендуем ознакомиться с тем, как работает Laravel, прочитав следующую документацию:
Как вы планируете использовать Laravel, также определит следующие шаги на вашем пути. Существует множество способов использования Laravel, и ниже мы рассмотрим два основных варианта использования фреймворка.
Новичок в Laravel? Ознакомьтесь с Laravel Bootcamp для практического ознакомления с фреймворком, пока мы проведем вас через создание вашего первого приложения Laravel.
Laravel как клиент-серверный фреймворк
Laravel можно использовать как клиент-серверный фреймворк. Это означает, что вы будете использовать Laravel для маршрутизации запросов к вашему приложению и отображения интерфейса через шаблоны Blade или с помощью гибридных технологий одностраничных приложений, таких как Inertia.js. Это один из наиболее распространённых способов использования Laravel.
Если вы планируете использовать Laravel в этом режиме, вам следует ознакомиться с нашей документацией по разработке фронтенда, маршрутизации, представлениям и ORM Eloquent. Также стоит обратить внимание на пакеты сообщества, такие как Livewire и Inertia, которые позволяют использовать Laravel как полноценный фреймворк и наслаждаться преимуществами одностраничных JavaScript-приложений.
Если вы используете Laravel как полноценный фреймворк, мы также рекомендуем вам изучить компиляцию CSS и JavaScript вашего приложения с помощью Vite.
Если вы хотите ускорить разработку, ознакомьтесь с нашими официальными стартовыми комплектами приложений.
Laravel в качестве сервера API
Laravel также может использоваться как сервер API для одностраничных JavaScript-приложений или мобильных приложений. Например, вы можете использовать Laravel в качестве серверной части API для вашего Next.js приложения. В этом контексте Laravel может обеспечивать аутентификацию, а также хранение и получение данных для вашего приложения, при этом вы сможете воспользоваться мощными службами Laravel, такими как очереди, электронная почта, уведомления и многое другое.
Если вы планируете использовать Laravel таким образом, ознакомьтесь с нашей документацией по маршрутизации, пакету Laravel Sanctum и Eloquent ORM.
Нужен быстрый старт для создания бэкенда на Laravel и фронтенда на Next.js? Laravel Breeze предлагает API stack и реализацию внешнего интерфейса Next.js, чтобы вы могли начать работу за считанные минуты.