
Привет, мир Laravel!
Если вы когда-нибудь пытались создать веб-приложение с нуля и после пары бессонных ночей смотрели на свой код с мыслью «ну и каша», то у меня для вас хорошие новости: есть Laravel! Это один из самых популярных PHP-фреймворков, который делает жизнь разработчика легче, код чище, а проект — более структурированным.
В этой статье мы разберемся с установкой Laravel, его основными компонентами и немного пошутим, чтобы не было скучно.
Установка Laravel: магия начинается!
Требования
Прежде чем погружаться в мир Laravel, убедитесь, что у вас есть:
- PHP 8.1+
- Composer (менеджер зависимостей, без которого Laravel не живёт)
- MySQL или другая база данных
- Node.js и NPM (если хотите работать с фронтендом)
Если всего этого нет, сначала установите, а потом продолжим. Я подожду…
Установка Laravel через Composer
Открываем терминал и запускаем команду:
composer create-project laravel/laravel my_project
Идём за чаем, потому что Composer скачает всё, что нужно. После завершения переходим в папку проекта:
cd my_project
Запускаем встроенный сервер Laravel и проверяем, работает ли всё:
php artisan serve
Теперь открываем браузер и идём по адресу http://127.0.0.1:8000
. Если видим страницу Laravel — поздравляю, вы на верном пути!
Основные концепции Laravel: теперь немного теории
1. Маршруты (Routes)
В Laravel маршруты определяются в файле routes/web.php
. Давайте создадим простенький маршрут:
use Illuminate\Support\Facades\Route;
Route::get('/hello', function () {
return "Привет, Laravel!";
});
Теперь, если вы зайдёте по адресу http://127.0.0.1:8000/hello
, увидите этот текст. Чудеса!
2. Контроллеры (Controllers)
Маршруты — это хорошо, но лучше отделять логику в контроллеры. Создадим контроллер:
php artisan make:controller HelloController
Теперь у нас есть app/Http/Controllers/HelloController.php
. Давайте изменим его:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HelloController extends Controller
{
public function index()
{
return "Привет из контроллера!";
}
}
Теперь обновим маршрут:
Route::get('/hello', [App\Http\Controllers\HelloController::class, 'index']);
Это позволит держать код в порядке и избежать беспорядка в web.php
.
3. Виды (Views)
Laravel использует Blade — удобный шаблонизатор, который позволяет писать красивые HTML-страницы. Создадим представление resources/views/hello.blade.php
:
<!DOCTYPE html>
<html>
<head>
<title>Привет, Laravel!</title>
</head>
<body>
<h1>{{ $message }}</h1>
</body>
</html>
Теперь обновим контроллер:
class HelloController extends Controller
{
public function index()
{
return view('hello', ['message' => 'Добро пожаловать в Laravel!']);
}
}
Заходим на /hello
— и вуаля!
Работа с базой данных
1. Настройка подключения
Открываем .env
и указываем настройки базы данных:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=my_database
DB_USERNAME=root
DB_PASSWORD=
2. Миграции
Создадим таблицу users
с помощью миграции:
php artisan make:migration create_users_table
Открываем database/migrations/xxxx_xx_xx_xxxxxx_create_users_table.php
и добавляем колонки:
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamps();
});
}
Применяем миграции:
php artisan migrate
Теперь у нас есть таблица users
в базе данных!
Eloquent ORM: работаем с базой красиво
1. Создание модели
Laravel предлагает мощную ORM (Object-Relational Mapping) — Eloquent. Создадим модель:
php artisan make:model User
Теперь у нас есть app/Models/User.php
. Добавим в него свойство, разрешающее массовое заполнение:
protected $fillable = ['name', 'email'];
2. Добавление данных
Добавим пользователя через контроллер:
use App\Models\User;
User::create(['name' => 'Иван', 'email' => 'ivan@example.com']);
3. Получение данных
Выведем всех пользователей:
$users = User::all();
foreach ($users as $user) {
echo $user->name . '<br>';
}
Заключение
Поздравляю! Теперь вы знаете, как установить Laravel, создать маршруты, контроллеры, представления и даже работать с базой данных. Конечно, это только верхушка айсберга, но уже не так страшно, верно?
Laravel — это мощный инструмент, который помогает писать чистый, читаемый и масштабируемый код. Так что продолжайте изучение, экспериментируйте и, главное, наслаждайтесь процессом! 🚀