Tìm kiếm bài viết

Những điều cần biết về Laravel Cơ bản mới nhất

12.03.2021

5.0/5 (1 Reviews)

Bạn đang học Laravel? Sau đây là những điều cần biết về Laravel Cơ bản nhất mà người mới học cần đọc qua trước khi đi vào Code.

    Bạn đang học Laravel? Sau đây là những điều cần biết về Laravel Cơ bản nhất mà người mới học cần đọc qua trước khi đi vào Code.

    Giới thiệu Laravel, Laravel là gì?

    Laravel là một PHP framework, có mã nguồn mở và miễn phí, được xây dựng nhằm hỗ trợ phát triển các phần mềm, ứng dụng, theo kiến trúc MVC. Được tạo ra bởi Taylor Otwell với phiên bản đầu tiên được ra mắt vào tháng 6 năm 2011.

    Xem thêm: Laravel là gì? Tại sao Laravel là PHP Framework tốt nhất năm 2021?

    Cái tên Laravel xuất phát từ Cair Paravel là một tòa lâu đài của Narnia, một thế giới tưởng tượng trong cuốn tiểu thuyết nổi tiếng “Biên niên sử Narnia” (The Chronicles of Narnia) đã được dựng thành phim. Laravel là cách đọc lái của Paravel. Và Taylor Otwell  nghĩ nó sành điệu và sang trọng.

    Laravel có cú pháp đơn giản dễ học, dễ đọc và rất thanh lịch,  cũng như giúp người dùng không phải bận tâm tới các điều nhỏ nhặt.

    Hiện nay Laravel đã là PHP framework số một và giữ vững được vị trí đó từ 2014 cho đến nay.

    Một trong những lý do khiến Laravel được biết đến và sử dụng rộng rãi là nhờ vào nguồn tài liệu, tại trang chủ của Laravel thì tài liệu hướng dẫn cũng rất chi tiết cho từng phiên bản và dễ tìm kiếm, được hệ thống cho người lập trình viên, cũng như người mới học dễ dàng tiếp cận và tìm hiểu.

    Với sự hỗ trợ mạnh mẽ của cộng đồng thì khi có bất kỳ vấn đề nào cần giải quyết bạn chỉ cần lên Google hoặc vào trong diễn đàn thần thánh Stackoverflow, bạn sẽ được hỗ trợ rất nhiệt tình từ cộng đồng.

    Laravel thay đổi tích cực trong các phiên bản và có những gói thư viện tốt nhất được tích hợp vào. Hệ sinh thái xung quanh Laravel cũng toàn những sản phẩm tốt nhất trong lĩnh vực của nó.

    Đây là một framework tuyệt vời đối với lập trình viên có kinh nghiệm và cả những bạn mới bắt đầu tập tành, bạn không cần phải biết nhiều về PHP nhưng vẫn có thể học và làm việc trên Laravel mà không gặp quá nhiều khó khăn.

    Những điều cần biết về Laravel để bắt đầu

    Hãy cùng chúng tôi tìm hiểu xem Laravel hỗ trợ cho chúng ta những gì nhé!

    Laravel Artisan

    Artisan là giao diện command-line có sẵn trong laravel. Nó cung cấp một lượng lớn câu lệnh commands hỗ trợ chúng ta khi đang xây dựng ứng dụng.

    Như đã nói đến ở trong câu triết lý của Laravel có câu “We’ve already laid the foundation — freeing you to create without sweating the small things.” tạm dịch “chúng tôi xây dựng nền tảng để giúp kiến tạo mà không cần bận tâm đến những thứ nhỏ nhặt”.

    Bạn có thể tạo ra file để thực hiện nhiệm vụ migration, model, seeder, controller với việc gõ lệnh command line trong dự án Laravel, không những tạo ra các file đó mà còn giúp bạn setup code cơ bản giúp giảm thiểu thời gian và tập trung vào việc viết những chức năng cho chương trình.


    VD: Tạo controller bằng cmd php artisan make:controller UserController

    Tạo controller bằng cmd php artisan make:controller UserController 

    Artisan giúp bạn giảm thiểu thời gian viết code cũng như tự động hoá một số công việc. Bạn sử dụng câu lệnh php artisan list để xem danh sách các câu lệnh hỗ trợ.

    Mô hình MVC

    Laravel được xây dựng và phát triển theo mô hình MVC (Model-View-Controller) nhờ đó mà cấu trúc và cách tổ chức code trong project được sắp xếp một cách hợp lý dễ dàng cho việc bảo trì cũng như phát triển về lâu dài.

    Mô hình MVC

    Sau khi Client truy cập vào link thì router sẽ phải điều hướng qua Middleware để kiểm tra Request đó có đủ điều kiện truy cập vào Controller hay không.

    Nếu đủ thì Controller sẽ xử lý request đó và lấy dữ liệu từ Model, Model sẽ lấy dữ liệu từ Database và xử lý nó trước khi trả lại cho Controller, Controller sau khi nhận được dữ liệu thì đưa cho View đổ dữ liệu xuống template, sau đó render ra HTML hoặc JSON rồi trả Response cho Client.

    Đây là mô hình hoạt động MVC, được chia ra rõ ràng, mỗi bộ phận xử lý một nhiệm vụ nên coder chỉ việc xây dựng chức năng cho mỗi giai đoạn đó nên sản phẩm làm ra rất dễ bảo trì và nâng cấp.

    Blade template - 1 loại Template Engine của Laravel

    Laravel hỗ trợ chia nhỏ từng phần của template ra, ví dụ: 1 template sẽ có bố cục các phần như header, body, footer, aside, menu navbar bạn có thể chia mỗi phần của template ra từng file riêng (file template đó có đuôi .blade.php) cho dễ quản lý, bảo trì rồi gắn vào trong layout master.

    Laravel cũng cung cấp cú pháp đơn giản cho việc đổ dữ liệu xuống template mà không bị rối mắt như sử dụng cặp thẻ <?php ?> thông thường:

     

    Sử dụng Laravel

    Eloquent ORM

    Eloquent ORM đi kèm với Laravel cung cấp một API ActiveRecord đơn giản và tiện lợi cho việc giao tiếp với database. Mỗi database table sẽ có một “Model” tương ứng để tương tác với table đó. Model cho phép tương tác với dữ liệu trong table, liên kết các bảng dữ liệu (relationship database). với cú pháp đơn giản dễ hiểu và được hệ thống, nên dễ bảo trì code và cũng dễ học đối với các bạn mới.


    Middleware.

    Middleware nằm giữa các request và response. Nó nằm giữa router và controller. middleware có nhiệm vụ lọc request có đủ điều kiện cho phép tiếp tục thực hiện các hàm trong controller.


    Laravel cung cấp một cú pháp tùy biến và dễ sử dụng giúp lập trình viên dễ dàng sử dụng cũng như chỉnh sửa sao cho thích hợp với dự án.

    Đăng ký một router và nhờ middleware xem xét điều kiện, nếu thoả  kiện sẽ đi đến hàm trong controller.

    Tạo ra một file middleware php bằng lệnh cmd:

    Để xét điều kiện của request trước khi thực hiện hàm trong controller:

    Để middleware hoạt động chúng ta còn một bước đăng ký Middleware trong file app/Http/Kernel.php và trong thuộc tính $routeMiddleware. Trong thuộc tính này đã chứa một số class middleware mặc định

    Kết luận

    Laravel là framework PHP dễ học cho người mới nhưng cũng rất mạnh mẽ để dùng cho các dự án lớn.

    Mình cũng là người bắt đầu học Laravel mà chưa biết gì về PHP (đúng hơn là chưa biết gì về lập trình backend), nói vậy đủ biết Laravel dễ sử dụng và được hệ thống dễ hiểu kể cả các bạn mới bắt đầu cũng có thể dễ dàng tiếp cận làm dự án. Và như một lẽ dĩ nhiên của đời thường, “cái gì không biết thì lên Google” nơi mọi thắc mắc hay gặp Bug cũng sẽ nhanh chóng tìm ra cách giải quyết. Hy vọng bài viết này có ích cho các bạn mới học về Laravel và cảm ơn các bạn đã đọc tới câu chữ cuối cùng.

    Các bài Khác về Laravel nên xem qua

    Học hết bao nhiêu đây bài một lần mà vẫn chưa làm được Laravel thì chắc bạn nên đọc lại thêm 1 lần nữa :D

    1. 10 tính năng ẩn trong Laravel Eloquent chắc chắn bạn chưa biết
    2. Laravel "Chunk" - Hãy cẩn thận!
    3. Tại sao Laravel là framework tốt nhất 2020?
    4. Laravel API Errors and Exceptions: How to Return Responses
    5. Laravel:Calling Eloquent from Blade: 6 Tips for Performance
    6. Laravel: Tìm hiểu về Service Providers
    7. Laravel: Tìm hiểu về Service Container
    8. Laravel: Tìm hiểu về queues. (Phần 1)
    9. Laravel: Tìm hiểu về queues. (Phần 2)
    10. Laravel: Tìm hiểu về HTTP Requests (Phần 1)
    11. Laravel: Tìm hiểu về HTTP Requests (Phần 2)
    12. Laravel: Tìm hiểu về Middleware
    13. Laravel: Mail (Phần 1)
    14. Laravel: Events
    15. Eloquent: relationships trong laravel - Phần 1
    16. Eloquent: relationship trong Laravel - Phần 2
    17. Eloquent: relationships trong Laravel - Phần 3
    18. Eloquent: Serialization trong laravel là gì 
    19. Eloquent: Mutators trong laravel là gì
    20. Tìm hiểu Singleton Pattern trong Laravel
    21. Tìm hiểu Template Pattern trong Laravel
    22. Tìm hiểu Apdapter Pattern trong Laravel
    23. Phân biệt giữa Authentication và Authorization trong Laravel
    24. Laravel: Làm thế nào để cấu trúc routes các dự án Thương mại điện tử?
    25. Laravel: Tìm hiểu về Query Builder (Bài 1)
    26. Laravel: Tìm hiểu về homestead (Phần 1)
    27. Laravel: Tìm hiểu về homestead trong Laravel (Bài 2)
    28. Laravel: Tìm hiểu về CSRF Protection
    29. Laravel: Tìm hiểu về Notifications (Phần 1)
    30. Laravel: Tìm hiểu về Notifications trong Laravel (Bài 2)
    31. Laravel: Tìm hiểu về Facades
    32. Laravel: Tìm hiểu về Contracts
    33. Laravel: 12 tips để tối ưu hóa performance (Phần 2)
    34. Làm sao để chạy raw queries an toàn trong Laravel
    35. Laravel: Task Scheduling trong laravel
    36. Tìm hiểu Elasticsearch với laravel
    37. Laravel: Console Command trong laravel phần 1
    38. Laravel: Console Command trong laravel Phần 2
    39. Laravel: tìm hiểu về cache trong Laravel
    40. Laravel: 20 Thủ thuật và mẹo sử dụng Laravel Eloquent (Bài 1)
    41. Laravel: 20 mẹo và thủ thuật về Laravel Eloquent (Bài 2)

    Tôi sẽ dành thêm thời gian để cập nhật thêm các bài khác về kiến thức laravel cho các bạn trong thời gian tiếp theo~

    CÓ THỂ BẠN QUAN TÂM

    Bài Viết Cùng Chuyên Mục

    XEM THÊM
    thumbnail

    Kubernetes bài 6 - Vận hành k8s Day-Two Operations và Quản trị bằng GitOps

    22.05.2026

    Khi cụm Kubernetes của bạn đã được bảo mật cấu hình, tối ưu tài nguyên và thiết lập tự phục hồi, câu hỏi đặt ra là làm sao để duy trì sự ổn định đó trong nhiều năm tiếp theo mà không bị phụ thuộc

    thumbnail

    Kubernetes bài 5 - bảo mật Cloud Native và chuẩn DevSecOps cho K8s

    22.05.2026

    Việc siết chặt an ninh (Hardening) không phải là cấu hình một vài thông số rồi bỏ đó, mà là một tư duy phòng thủ chiều sâu.

    thumbnail

    Kubernetes bài 4 - Tối ưu Resource Auto-Healing và Scale Zero-Downtime

    22.05.2026

    Bài viết này sẽ đi sâu vào các cơ chế ở tầng Kernel giúp hệ thống tự phục hồi, chống lại các đợt tấn công cạn kiệt tài nguyên và cập nhật phiên bản mới mà người dùng không hề hay biết.

    thumbnail

    Kubernetes bài 3 - Bảo mật cấu hình k8s và config Security trên Production

    22.05.2026

    Kubernetes giải quyết bài toán này bằng hai đối tượng chuyên biệt nhưng nếu không hiểu rõ bản chất bảo mật ở tầng dưới, bạn đang tự tay dâng toàn bộ chìa khóa hệ thống cho hacker.

    thumbnail

    Kubernetes bài 2 - Mạng lưới k8s và luồng Traffic ở Packet Level

    22.05.2026

    Pod không chỉ là một container: Rất nhiều người nhầm lẫn Pod 1-1 với Container. Thực chất, Pod là đơn vị triển khai nhỏ nhất, có thể chứa một hoặc nhiều container

    Mục lục bài viết