Інсталяція

Знайомство з Laravel

Laravel — це фреймворк для веб-застосунків з виразним, елегантним синтаксисом. Веб-фреймворк надає структуру та відправну точку для створення вашого застосунку, дозволяючи вам зосередитися на створенні чогось дивовижного, поки ми дбаємо про деталі.

Laravel прагне забезпечити чудовий досвід розробника, надаючи потужні функції, такі як ретельна ін'єкція залежностей, виразний рівень абстракції бази даних, черги та заплановані завдання, модульне та інтеграційне тестування та багато іншого.

Чи ви новачок у PHP веб-фреймворках, чи маєте багаторічний досвід, Laravel — це фреймворк, який може рости разом з вами. Ми допоможемо вам зробити перші кроки як веб-розробник або надамо вам поштовх, щоб підняти вашу експертизу на новий рівень. Ми з нетерпінням чекаємо, що ви створите.

Чому Laravel?

Існує безліч інструментів і фреймворків, доступних для вас при створенні веб-застосунку. Однак, ми вважаємо, що Laravel є найкращим вибором для створення сучасних, повноцінних веб-застосунків.

Прогресивний фреймворк

Ми любимо називати Laravel "прогресивним" фреймворком. Під цим ми маємо на увазі, що Laravel зростає разом з вами. Якщо ви тільки починаєте свій шлях у веб-розробці, велика бібліотека документації, посібників та відеоуроків Laravel допоможе вам освоїти основи, не відчуваючи перевантаження.

Якщо ви старший розробник, Laravel надає вам потужні інструменти для впровадження залежностей, модульного тестування, черг, подій у реальному часі та багато іншого. Laravel налаштований для створення професійних веб-застосунків і готовий обробляти навантаження на рівні підприємства.

Масштабована структура

Laravel неймовірно масштабований. Завдяки природі PHP, що сприяє масштабуванню, та вбудованій підтримці Laravel для швидких, розподілених систем кешування, таких як Redis, горизонтальне масштабування з Laravel є легким. Насправді, застосунки Laravel легко масштабуються для обробки сотень мільйонів запитів на місяць.

Потрібне екстремальне масштабування? Такі платформи, як Laravel Cloud, дозволяють запускати ваш Laravel-застосунок майже на необмеженому масштабі.

Фреймворк Спільноти

Laravel поєднує найкращі пакети в екосистемі PHP, щоб запропонувати найміцніший і найзручніший для розробників фреймворк. Крім того, тисячі талановитих розробників з усього світу внесли свій вклад у фреймворк. Хто знає, можливо, ви навіть станете учасником Laravel.

Створення Laravel Застосунку

Встановлення PHP та Laravel Installer

Перш ніж створити свій перший Laravel застосунок, переконайтеся, що на вашій локальній машині встановлено PHP, Composer та Laravel installer. Крім того, вам слід встановити або Node і NPM, або Bun, щоб ви могли компілювати фронтенд-активи вашого застосунку.

Якщо у вас не встановлено PHP та Composer на вашій локальній машині, наступні команди встановлять PHP, Composer та Laravel installer на 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 installer після їх встановлення через php.new, ви можете повторно виконати команду у вашому терміналі.

Якщо у вас вже встановлені PHP та Composer, ви можете встановити Laravel installer через Composer:

composer global require laravel/installer

Для повнофункціонального, графічного досвіду встановлення та управління PHP, ознайомтеся з Laravel Herd.

Створення Застосунку

Після того, як ви встановили PHP, Composer і Laravel installer, ви готові створити новий Laravel застосунок. Laravel installer запропонує вам вибрати ваш улюблений тестовий фреймворк, базу даних і стартовий набір:

laravel new example-app

Після створення застосунку ви можете запустити локальний сервер розробки Laravel, робітник черги та сервер розробки Vite, використовуючи скрипт Composer dev:

cd example-app
npm install && npm run build
composer run dev

Як тільки ви запустите сервер розробки, ваш застосунок буде доступний у вашому веб-браузері за адресою http://localhost:8000. Далі ви готові зробити наступні кроки в екосистемі Laravel. Звичайно, ви також можете налаштувати базу даних.

Якщо ви хочете отримати фору при розробці вашого Laravel-застосунку, розгляньте можливість використання одного з наших стартових комплектів. Стартові комплекти Laravel надають бекенд та фронтенд аутентифікацію для вашого нового Laravel-застосунку.

Початкова конфігурація

Усі файли конфігурації для фреймворку Laravel зберігаються в директорії config. Кожна опція задокументована, тому не соромтеся переглядати файли та ознайомлюватися з доступними вам опціями.

Laravel майже не потребує додаткової конфігурації з коробки. Ви можете вільно починати розробку! Однак, можливо, ви захочете переглянути файл config/app.php та його документацію. Він містить кілька параметрів, таких як url та locale, які ви можете змінити відповідно до вашого застосунку.

Конфігурація на основі середовища

Оскільки багато значень параметрів конфігурації 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 або DBngin.

Конфігурація каталогу

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 UI доступний, якщо клацнути лівою кнопкою миші на значку Herd у системному треї. Клацання правою кнопкою відкриває швидке меню з доступом до всіх інструментів, які вам потрібні щодня.

Під час встановлення Herd створює "припарковану" директорію у вашій домашній директорії за адресою %USERPROFILE%\Herd. Будь-який Laravel застосунок у припаркованій директорії автоматично обслуговуватиметься Herd, і ви можете отримати доступ до будь-якого Laravel застосунку в цій директорії на домені .test, використовуючи його ім'я директорії.

Після встановлення Herd, найшвидший спосіб створити новий Laravel застосунок — це використання Laravel CLI, яке постачається разом з Herd. Щоб почати, відкрийте Powershell і виконайте наступні команди:

cd ~\Herd
laravel new my-app
cd my-app
herd open

Ви можете дізнатися більше про Herd, переглянувши документацію Herd для Windows.

Підтримка IDE

Ви можете використовувати будь-який редактор коду для розробки Laravel-застосунків; однак, PhpStorm пропонує розширену підтримку Laravel та його екосистеми, включаючи Laravel Pint.

Крім того, підтримуваний спільнотою плагін Laravel Idea для PhpStorm пропонує різноманітні корисні доповнення для IDE, включаючи генерацію коду, автозавершення синтаксису Eloquent, автозавершення правил валідації та інше.

Якщо ви розробляєте у Visual Studio Code (VS Code), офіційне Laravel VS Code Extension тепер доступне. Це розширення приносить інструменти, специфічні для Laravel, безпосередньо у ваше середовище VS Code, підвищуючи продуктивність.

Наступні кроки

Тепер, коли ви створили свій Laravel-застосунок, ви можете задуматися, що вивчати далі. По-перше, ми настійно рекомендуємо ознайомитися з тим, як працює Laravel, прочитавши наступну документацію:

Як ви хочете використовувати Laravel, також визначатиме наступні кроки на вашому шляху. Існує безліч способів використання Laravel, і ми розглянемо два основні випадки використання цього фреймворку нижче.

Laravel повноцінний стековий фреймворк

Laravel може слугувати як full stack фреймворк. Під "full stack" фреймворком ми маємо на увазі, що ви будете використовувати Laravel для маршрутизації запитів до вашого застосунку та рендерингу вашого фронтенду через Blade шаблони або гібридну технологію односторінкового застосунку, таку як Inertia. Це найпоширеніший спосіб використання фреймворку Laravel і, на нашу думку, найпродуктивніший спосіб використання Laravel.

Якщо ви плануєте використовувати Laravel таким чином, вам може бути цікаво ознайомитися з нашою документацією про фронтенд-розробку, маршрутизацію, представлення або Eloquent ORM. Крім того, вам може бути цікаво дізнатися про пакети спільноти, такі як Livewire та Inertia. Ці пакети дозволяють використовувати Laravel як фул-стек фреймворк, насолоджуючись багатьма перевагами інтерфейсу, які надають односторінкові JavaScript-застосунки.

Якщо ви використовуєте Laravel як повноцінний стековий фреймворк, ми також настійно рекомендуємо вам дізнатися, як компілювати CSS та JavaScript вашого застосунку за допомогою Vite.

Якщо ви хочете швидше розпочати створення вашого застосунку, ознайомтеся з одним із наших офіційних стартових наборів для застосунків.

Laravel API Backend

Laravel також може слугувати як API бекенд для JavaScript односторінкового застосунку або мобільного застосунку. Наприклад, ви можете використовувати Laravel як API бекенд для вашого Next.js застосунку. У цьому контексті ви можете використовувати Laravel для надання автентифікації та зберігання / отримання даних для вашого застосунку, а також скористатися потужними сервісами Laravel, такими як черги, електронні листи, сповіщення та інше.

Якщо ви плануєте використовувати Laravel таким чином, вам може бути цікаво ознайомитися з нашою документацією про маршрутизацію, Laravel Sanctum та Eloquent ORM.