Laravel là một PHP framework mã nguồn mở do Taylor Otwell phát triển, ra mắt lần đầu năm 2011. Sau hơn một thập kỷ, đây là một trong những framework PHP được dùng nhiều nhất để xây dựng website và ứng dụng web, từ blog cá nhân đến hệ thống quản lý cho doanh nghiệp.
Bài viết này giới thiệu Laravel là gì, những thành phần chính của nó và cách bắt đầu học.
Laravel là gì?
Framework là bộ khung có sẵn những phần mà hầu hết ứng dụng web đều cần: định tuyến đường dẫn, làm việc với cơ sở dữ liệu, đăng nhập, kiểm tra dữ liệu đầu vào. Thay vì viết lại từ đầu, lập trình viên tập trung vào phần nghiệp vụ riêng của dự án.
Laravel tổ chức mã nguồn theo mô hình MVC (Model - View - Controller): Model làm việc với dữ liệu, View hiển thị giao diện, Controller nhận yêu cầu và điều phối giữa hai phần còn lại. Cách chia này giúp dự án dễ đọc và dễ bảo trì khi lớn dần.
Vì sao Laravel được ưa chuộng
- Cú pháp rõ ràng: mã nguồn đọc gần với ngôn ngữ tự nhiên, dễ tiếp cận với người mới.
- Đầy đủ tính năng sẵn có: xác thực, hàng đợi, gửi email, lưu cache, lập lịch tác vụ đều có trong framework.
- Hệ sinh thái lớn: nhiều công cụ đi kèm như Breeze, Sanctum, Livewire, Inertia, Forge.
- Tài liệu tốt và cộng đồng đông: hầu hết vấn đề gặp phải đều đã có người hỏi và trả lời.
Các thành phần chính
Routing
Route khai báo đường dẫn nào sẽ do đoạn mã nào xử lý. Các route của website nằm trong file routes/web.php, viết ngắn gọn và hỗ trợ nhóm route, đặt tên, gắn middleware.
Eloquent ORM
Eloquent cho phép làm việc với cơ sở dữ liệu bằng các đối tượng PHP thay vì viết SQL trực tiếp. Mỗi bảng tương ứng với một Model, quan hệ giữa các bảng được khai báo bằng những phương thức như hasMany hay belongsTo.
Blade
Blade là công cụ dựng giao diện của Laravel. Nó cho phép kế thừa bố cục, tách giao diện thành các component dùng lại và tự động mã hóa dữ liệu khi in ra để hạn chế lỗi XSS.
Migration
Migration mô tả cấu trúc bảng bằng mã PHP. Nhờ đó cấu trúc cơ sở dữ liệu được quản lý phiên bản cùng mã nguồn, cả nhóm chạy php artisan migrate là có cùng cấu trúc.
Artisan
Artisan là công cụ dòng lệnh đi kèm, dùng để tạo nhanh file và tự động hóa tác vụ. Ví dụ php artisan make:model Product -m tạo một Model kèm file migration.
Xác thực và phân quyền
Laravel có sẵn nền tảng cho đăng nhập, đăng ký, đặt lại mật khẩu và phân quyền qua Gate, Policy. Gói Breeze dựng sẵn giao diện xác thực, còn Sanctum dùng để xác thực cho API.
Laravel phù hợp với dự án nào
- Website doanh nghiệp, tin tức có trang quản trị
- Cửa hàng online, hệ thống đặt lịch
- Phần mềm quản lý nội bộ: kho, nhân sự, khách hàng
- Backend cung cấp API cho ứng dụng di động hoặc giao diện React, Vue
Với trang giới thiệu chỉ vài trang tĩnh, Laravel có thể là quá mức cần thiết; HTML tĩnh hoặc một CMS sẽ nhanh gọn hơn.
Bắt đầu học Laravel như thế nào
- Nắm PHP cơ bản và lập trình hướng đối tượng: class, kế thừa, interface.
- Làm quen Composer, công cụ quản lý thư viện của PHP.
- Tạo dự án đầu tiên bằng
composer create-project laravel/laravel ten-du-an. - Chạy thử với
php artisan servevà mở trình duyệt. - Làm một chức năng thêm, sửa, xóa hoàn chỉnh, ví dụ quản lý bài viết.
Sau khi làm được chức năng đầu tiên, hãy tiếp tục với kiểm tra dữ liệu đầu vào, quan hệ giữa các bảng và xác thực người dùng. Học qua một dự án cụ thể luôn nhanh hơn chỉ đọc tài liệu.
Muốn học Laravel bài bản từ PHP cơ bản? Xem lộ trình tự học miễn phí kèm video từng bước.
Lộ trình Backend với PHP & Laravel →