Laravel 12 mang đến nhiều cải tiến về hiệu năng, bảo mật và trải nghiệm lập trình viên. Việc cập nhật từ Laravel 11 lên 12 giúp bạn tận dụng được những tính năng mới nhất, đồng thời duy trì ứng dụng luôn tương thích với các thư viện hiện đại. Xem thêm bài viết về Có gì mới trong Laravel 12?
Trong bài viết này, CodeTutHub sẽ hướng dẫn bạn từng bước nâng cấp Laravel 11 lên Laravel 12 một cách an toàn và hiệu quả.

📋 1. Kiểm tra yêu cầu hệ thống Laravel 12
Trước khi nâng cấp, hãy chắc chắn hệ thống của bạn đáp ứng các yêu cầu sau:
| Thành phần | Phiên bản tối thiểu |
|---|---|
| PHP | >= 8.3 |
| Composer | 2.x |
| Database | MySQL >= 8.0 / PostgreSQL >= 12 |
| Node.js & NPM | Node >= 18, NPM >= 9 (nếu dùng Vite, Laravel Mix) |
💡 Lưu ý: Laravel 12 không còn hỗ trợ PHP 8.2 trở xuống.
🔒 2. Sao lưu dự án và chạy kiểm thử
Trước khi thay đổi, bạn nên:
- Commit toàn bộ thay đổi hiện tại (
git commit -am "Backup before Laravel 12 upgrade") - Tạo nhánh mới:
git checkout -b upgrade/laravel-12 - Backup database (nếu có thay đổi schema).
📦 3. Cập nhật composer.json
Thay đổi phiên bản Laravel:
Trong file composer.json, thay dòng:
"laravel/framework": "^11.0"Thành:
"laravel/framework": "^12.0"Cập nhật các packages đi kèm:
Laravel 12 có thể yêu cầu nâng version một số packages như:
"laravel/sanctum": "^4.0""laravel/passport": "^12.0""laravel/socialite": "^5.20"
🧹 4. Xóa cache & cập nhật thư viện
Chạy các lệnh sau:
php artisan clear-compiled
composer clear-cache
composer update
⚙️ 5. Kiểm tra và cập nhật code thủ công
Laravel 12 có thể loại bỏ hoặc thay đổi một số tính năng:
✅ Những thay đổi thường gặp:
handle()trong middleware có thể yêu cầuClosure $nextthay vì kiểu cũ.- Một số Facade và helper có thể deprecated, ví dụ
Str::snake()hoặcArr::get()có thể được thay bằngStr::of()->snake(). - Các câu lệnh Artisan có thể đổi tham số hoặc cú pháp (nên chạy
php artisanđể xem thay đổi).
📚 Tham khảo Laravel 12 Upgrade Guide để xem các thay đổi chi tiết.
🧪 6. Kiểm thử ứng dụng sau cập nhật
Sau khi nâng cấp xong:
- Chạy toàn bộ test:
php artisan test - Kiểm tra route hoạt động:
php artisan route:list - Kiểm tra các middleware, auth, job queue, storage, mail, v.v...
📌 7. Đẩy code lên production (nếu đã test xong)
Nếu mọi thứ hoạt động bình thường, bạn có thể merge nhánh upgrade vào nhánh chính (main hoặc master) và deploy.
🚀 Tip: Trước khi deploy, chạy lại:
php artisan config:cache
php artisan route:cache
php artisan view:cache📚 Kết luận
Việc cập nhật Laravel từ 11 lên 12 không quá phức tạp nếu bạn chuẩn bị kỹ. Laravel 12 mang lại khả năng tương thích tốt hơn với PHP 8.3, cải tiến về container, route, validation và nhiều hơn nữa.
✨ Bạn học được gì?
- Cách cập nhật framework Laravel bằng Composer
- Những thay đổi đáng chú ý trong Laravel 12
- Cách kiểm tra và xử lý các vấn đề sau nâng cấp
CodeTutHub sẽ tiếp tục cập nhật các hướng dẫn nâng cấp và tính năng mới của Laravel qua từng phiên bản. Đừng quên theo dõi chúng tôi để nhận tài liệu và hướng dẫn mới nhất nhé!









