git |
---|
97e713da10ce740be90f259c765a6cd7c1a4c504 |
Laravel — это веб-фреймворк с выразительным и элегантным синтаксисом. Он предоставляет структуру и отправную точку для разработки приложений, позволяя сосредоточиться на создании чего-то уникального. Но пока не будем углубляться в детали.
Laravel нацелен на то, чтобы сделать процесс разработки максимально приятным, при этом предлагая мощные возможности: удобное внедрение зависимостей, выразительные абстракции для работы с базами данных, очереди и планировщик задач, поддержку модульного и интеграционного тестирования и многое другое.
Будь вы новичком в PHP, веб-фреймворках или опытным разработчиком с многолетним стажем, Laravel — это фреймворк, который будет развиваться вместе с вами. Мы поможем вам сделать первые шаги в веб-разработке или предложим способы улучшить ваши навыки. Мы с нетерпением ждём того, что вы создадите!
Note
Новичок в Laravel? Посетите Laravel Bootcamp для практического тура по фреймворку, во время которого мы проведем вас через создание вашего первого приложения Laravel.
При разработке веб-приложений у вас есть множество инструментов и фреймворков на выбор. Однако мы уверены, что Laravel — лучший выбор для создания современных и полнофункциональных веб-приложений.
Мы любим называть Laravel «прогрессивным» фреймворком. Это означает, что Laravel развивается вместе с вами. Если вы начинающий разработчик, обширная библиотека документации, руководств и видеоуроков Laravel поможет вам освоить основы, не перегружая сложными концепциями.
Если вы опытный разработчик, Laravel предлагает мощные инструменты для внедрения зависимостей, модульного тестирования, работы с очередями, реального времени и многое другое. Laravel создан для разработки профессиональных веб-приложений и способен справляться с корпоративными задачами.
Laravel невероятно масштабируем. Благодаря удобному для масштабирования характеру PHP и встроенной поддержке быстрых распределенных систем кеширования, таких как Redis, горизонтальное масштабирование с Laravel очень просто. Фактически, приложения Laravel легко масштабируются для обработки сотен миллионов запросов в месяц.
Нуждаетесь в экстремальном масштабировании? Платформы вроде Laravel Cloud позволяют запускать Laravel-приложение с практически неограниченной масштабируемостью.
Laravel объединяет лучшие пакеты в экосистеме PHP, чтобы предложить наиболее надёжный и удобный для разработчиков фреймворк. Более того, тысячи талантливых разработчиков со всего мира внесли свой вклад в его развитие. Кто знает, возможно, вы тоже станете частью сообщества Laravel.
Прежде чем создавать свое первое приложение Laravel, убедитесь, что на вашем локальном компьютере установлены PHP, Composer и установщик Laravel. Кроме того, вам следует установить либо Node и NPM, либо Bun, чтобы вы могли скомпилировать ресурсы внешнего интерфейса вашего приложения.
Если на вашем локальном компьютере не установлены PHP и Composer, следующие команды установят PHP, Composer и установщик Laravel в macOS, Windows или Linux:
/bin/bash -c "$(curl -fsSL https://php.new/install/mac/8.4)"
# Запуск от имени администратора...
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://php.new/install/windows/8.4'))
/bin/bash -c "$(curl -fsSL https://php.new/install/linux/8.4)"
После выполнения одной из приведенных выше команд вам следует перезапустить сеанс терминала. Чтобы обновить PHP, Composer и установщик Laravel после их установки через php.new
, вы можете повторно запустить команду в своем терминале.
Если у вас уже установлены PHP и Composer, вы можете установить установщик Laravel через Composer:
composer global require laravel/installer
Note
Чтобы получить полнофункциональный графический менеджер установки и управления PHP, посетите Laravel Herd.
После установки PHP, Composer и установщика Laravel вы готовы создать новое приложение Laravel. Установщик Laravel предложит вам выбрать предпочитаемую среду тестирования, базу данных и стартовый комплект:
laravel new example-app
После создания приложения вы можете запустить локальный сервер разработки Laravel, обработчик очереди и сервер разработки Vite, используя скрипт Composer dev
:
cd example-app
npm install && npm run build
composer run dev
После запуска сервера разработки ваше приложение будет доступно в вашем веб-браузере по адресу http://localhost:8000. Теперь вы готовы продолжить свои первые шаги в мире Laravel. Конечно же, вы также можете настроить базу данных.
Note
Если вы хотите начать разработку вашего приложения Laravel с хорошим стартом, рассмотрите использование одного из наших стартовых комплектов. Стартовые комплекты Laravel предоставляют инфраструктуру для аутентификации как на сервере, так и на клиенте для вашего нового приложения Laravel.
Все файлы конфигурации Laravel хранятся в каталоге config
. Каждый параметр снабжён комментариями, поэтому не стесняйтесь просматривать файлы и знакомиться с доступными вам опциями.
Laravel практически не требует дополнительной настройки сразу после установки — можно сразу приступать к разработке! Однако рекомендуется ознакомиться с файлом конфигурации config/app.php
и его документацией. В этом файле содержатся важные параметры, такие как url
и locale
, которые могут потребовать изменения в зависимости от требований вашего приложения.
Поскольку многие значения параметров конфигурации Laravel могут меняться в зависимости от того, работает ли ваше приложение на локальном компьютере или на сервере в продакшене, важные параметры конфигурации задаются в файле .env
, который находится в корне вашего приложения.
Файл .env
не следует добавлять в систему контроля версий вашего приложения, так как различные разработчики и серверы могут требовать разные настройки окружения. Кроме того, размещение этого файла в репозитории может представлять угрозу безопасности, если злоумышленник получит доступ к вашему репозиторию, так как конфиденциальные данные могут быть раскрыты.
Note
Для получения дополнительной информации о конфигурации на основе файла .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
Note
Если вы разрабатываете для macOS или Windows и вам необходимо установить MySQL, PostgreSQL или Redis локально, рассмотрите возможность использования Herd Pro или or DBngin.
Laravel всегда должен обслуживаться из корня веб-каталога, настроенного для вашего веб-сервера. Не пытайтесь обслуживать приложение Laravel из поддиректории, так как это может привести к открытию доступа к конфиденциальным файлам в вашем приложении.
Laravel Herd — это невероятно быстрая встроенная среда разработки Laravel и PHP для macOS и Windows. Herd включает в себя все необходимое для начала разработки на Laravel, включая PHP и Nginx.
После установки Herd вы готовы начать разработку с помощью Laravel. Herd включает инструменты командной строки для php
, composer
, laravel
, expose
, node
, npm
и nvm
.
Note
Herd Pro дополняет Herd дополнительными мощными функциями, такими как возможность создания и управления локальными базами данных MySQL, Postgres и Redis, а также локальный просмотр почты и мониторинг журналов.
Если вы занимаетесь разработкой на 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.
Вы можете загрузить установщик 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.
Вы можете использовать любой редактор кода при разработке приложений Laravel; однако PhpStorm предлагает обширную поддержку для Laravel и его экосистемы, включая Laravel Pint.
Кроме того, поддерживаемый сообществом плагин PhpStorm Laravel Idea предлагает различные полезные дополнения для IDE, включая генерацию кода, автодополнение синтаксиса Eloquent, автодополнение правил валидации и многое другое.
Если вы разрабатываете в Visual Studio Code (VS Code), теперь доступно официальное расширение Laravel для VS Code. Оно добавляет инструменты, специально разработанные для Laravel, прямо в вашу среду разработки, повышая удобство и продуктивность.
Теперь, когда вы создали свое приложение Laravel, возможно, вам интересно, что изучить дальше. Во-первых, мы настоятельно рекомендуем ознакомиться с тем, как работает Laravel, прочитав следующую документацию:
Как вы планируете использовать Laravel, также определит следующие шаги на вашем пути. Существует множество способов использования Laravel, и ниже мы рассмотрим два основных варианта использования фреймворка.
Laravel можно использовать как клиент-серверный фреймворк. Это означает, что вы будете использовать Laravel для маршрутизации запросов к вашему приложению и отображения интерфейса через шаблоны Blade или с помощью гибридных технологий одностраничных приложений, таких как Inertia.js. Это один из наиболее распространённых способов использования Laravel.
Если вы планируете использовать Laravel в этом режиме, вам следует ознакомиться с нашей документацией по разработке фронтенда, маршрутизации, представлениям и ORM Eloquent. Также стоит обратить внимание на пакеты сообщества, такие как Livewire и Inertia, которые позволяют использовать Laravel как полноценный фреймворк и наслаждаться преимуществами одностраничных JavaScript-приложений.
Если вы используете Laravel как полноценный фреймворк, мы также рекомендуем вам изучить компиляцию CSS и JavaScript вашего приложения с помощью Vite.
Note
Если вы хотите ускорить разработку, ознакомьтесь с нашими официальными стартовыми комплектами приложений.
Laravel также может использоваться как сервер API для одностраничных JavaScript-приложений или мобильных приложений. Например, вы можете использовать Laravel в качестве серверной части API для вашего Next.js приложения. В этом контексте Laravel может обеспечивать аутентификацию, а также хранение и получение данных для вашего приложения, при этом вы сможете воспользоваться мощными службами Laravel, такими как очереди, электронная почта, уведомления и многое другое.
Если вы планируете использовать Laravel таким образом, ознакомьтесь с нашей документацией по маршрутизации, пакету Laravel Sanctum и Eloquent ORM.