Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 126 trang
THÔNG TIN TÀI LIỆU
Cấu trúc
Bài 1: Giới thiệu
Ưu điểm của Laravel
Composer
Artisan
Các tính năng của Laravel
Tính mô đun: Laravel cung cấp 20 thư viện và mô-đun tích hợp giúp tăng cường ứng dụng. Mỗi mô-đun được tích hợp với trình quản lý phụ thuộc Composer giúp dễ dàng cập nhật.
Khả năng kiểm tra: Laravel bao gồm các tính năng và trợ giúp giúp kiểm tra thông qua các trường hợp thử nghiệm khác nhau. Tính năng này giúp duy trì mã theo yêu cầu.
Định tuyến (Routing): Laravel cung cấp một cách tiếp cận linh hoạt cho người dùng để xác định các routes trong ứng dụng web. Định tuyến giúp mở rộng ứng dụng theo cách tốt hơn và tăng hiệu suất của nó.
Quản lý cấu hình: Một ứng dụng web được thiết kế trong Laravel sẽ chạy trên các môi trường khác nhau, điều đó có nghĩa là sẽ có sự thay đổi liên tục trong cấu hình của nó. Laravel cung cấp một cách tiếp cận nhất quán để xử lý cấu hình một cách hiệu quả.
Trình tạo truy vấn và ORM: Laravel kết hợp một trình xây dựng truy vấn giúp truy vấn cơ sở dữ liệu bằng các phương thức chuỗi đơn giản khác nhau. Nó cung cấp ORM (Object Relative Mapper) và triển khai ActiveRecord được gọi là Eloquent.
Xây dựng lược đồ (Schema Builder): Schema Builder duy trì các định nghĩa và lược đồ cơ sở dữ liệu trong mã PHP. Nó cũng duy trì theo dõi các thay đổi liên quan đến di chuyển cơ sở dữ liệu.
Công cụ template: Laravel sử dụng công cụ Blade Template, một ngôn ngữ template được sử dụng để thiết kế các khối và bố cục phân cấp với các khối được xác định trước bao gồm nội dung động.
E-mail: Laravel bao gồm một lớp mail giúp gửi thư có nội dung phong phú và tệp đính kèm từ ứng dụng web.
Xác thực: Xác thực người dùng là một tính năng phổ biến trong các ứng dụng web. Laravel giảm bớt việc thiết kế xác thực vì nó bao gồm các tính năng như đăng ký, quên mật khẩu và gửi lời nhắc mật khẩu.
Redis: Laravel sử dụng Redis để kết nối với một phiên hiện có và bộ đệm cho mục đích chung. Redis tương tác với phiên trực tiếp.
Hàng đợi: Laravel bao gồm các dịch vụ xếp hàng như gửi email số lượng lớn hoặc một công việc Cron được chỉ định. Các hàng đợi này giúp hoàn thành các nhiệm vụ một cách dễ dàng hơn mà không phải chờ đợi nhiệm vụ trước đó được hoàn thành.
Event và Command Bus: Laravel 5.1 bao gồm Command Bus giúp thực thi các lệnh và gửi các sự kiện một cách đơn giản. Các lệnh trong Laravel hoạt động theo vòng đời của ứng dụng.
Bài 2: Cài đặt Laravel
Bài 3: Cấu trúc ứng dụng Laravel
App
Console
Exceptions
Http
Providers
Bootstrap
Config
Database
Public
Resources
routes
api
web
Storage
Tests
Vendor
Bài 4: Cấu hình Laravel
Cấu hình môi trường
Các điểm quan trọng
Truy xuất các biến môi trường
Truy cập các giá trị cấu hình
Bộ nhớ đệm của cấu hình
Chế độ bảo trì
Bài 5: Định tuyến (Routing)
Định tuyến cơ bản
Ví dụ
routes/web.php
resources/view/welcome.blade.php
Định tuyến các tham số
Các tham số bắt buộc
Các tham số tùy chọn
Các định tuyến đặt tên
Bài 6: Middleware
Đăng ký Middleware
Các Tham số middleware
Terminable Middleware
Bài 7: Request trong Laravel
Lấy Request URI
Lấy dữ liệu đầu vào (input)
Sử dụng phương thức input()
Sử dụng các thuộc tính của thể hiện Request
Bài 8: Response trong laravel
Response cơ bản
Đính kèm các header
Đính kèm Cookies
Phản hồi JSON
Bài 9: Controllers
Tạo một controller
Controller Middleware
Chỉ định Middleware cho Route
Chỉ định Middleware trong hàm tạo của Controller
Restful Resource Controllers
Bài 10: Models
Model là gì?
Tạo Model
Tên bảng
Khóa chính
Timestamp
Bài 11: Migrations
Các lệnh Artisan Migration
Tạo một Migration cơ sở dữ liệu mới
Cấu trúc của Migration
Bài 12: Views
Truyền dữ liệu cho views
Chia sẻ dữ liệu với tất cả Views
Bài 13: Blade Template
Cấu trúc Blade Layout
Các bước để tạo Blade Template Layout & Hiển thị dữ liệu trong Blade views:
Các lệnh Blade Template
Hiển thị dữ liệu trong blade view
Hiển thị dữ liệu JSON trong Blade Views
Các lệnh điều khiển Blade
Câu lệnh if blade template
Xác thực giá trị trước khi hiển thị
Lệnh xác thực Blade
Lệnh @section và @yield
Vòng lặp
Thêm comment Blade:
Thêm các mã PHP đơn giản trong Blade:
Nhúng các views con sử dụng Blade
Bài 14: Cookie
Tạo cookie
Truy xuất Cookie
Bài 15: Sessions
Lưu trữ dữ liệu trong session
Truy hồi (lấy) giá trị session
Truy hồi tất cả dữ liệu session
Kiểm tra sự tồn tại của session
Xóa dữ liệu từ session
Thêm mảng vào session
Sinh ra session ID
Dữ liệu flash
Bài 16: Điều hướng (redirection)
Điều hướng tới Named Routes
Điều hướng tới các action của controller
Bài 17: Làm việc với Cơ sở dữ liệu
Kết nối với cơ sở dữ liệu
Cú pháp
Các tham số
Trả về
Mô tả
Ví dụ
Cú pháp
Các tham số
Trả về
Mô tả
Ví dụ
Cú pháp
Các tham số
Trả về
Mô tả
Ví dụ
Cú pháp
Các tham số
Trả về
Mô tả
Ví dụ
Bài 18: Form
Ví dụ 1
Mở một Form
Tạo một phần tử Label
Tạo một Text Input
Chỉ định giá trị mặc đinh
Tạo một Password Input
Tạo một File Input
Tạo một Checkbox hoặc Radio Input
Tạo một Checkbox hoặc Radio Input đã được check
Tạo một Drop-Down List
Tạo một nút Submit
Ví dụ 2
Bài 19: Xác thực dữ liệu (Validation)
Các quy tắc validation có sẵn trong Laravel
Các quy tắc validation có sẵn trong Laravel
Ví dụ
Bài 20: Đa ngôn ngữ (Localization)
Ví dụ
Bài 21: Upload file
Ví dụ
Bài 22: Gửi mail
Ví dụ
Bài 23: AJAX
Cú pháp hàm json()
Ví dụ
Bài 24: Xử lý lỗi
Những điểm quan trọng
Nhật ký lỗi (Error Log)
Mức độ nghiêm trọng
Bài 25: Bảo vệ CSRF
Thực hiện
Form không có CSRF token
Form với CSRF token
Bài 26: Xác thực (Authentication)
Lệnh
Controller
Login
Register
Xác thực người dùng thủ công
Bài 27: Ủy quyền (Authorization)
Sự khác biệt giữa Xác thực và Ủy quyền
Cơ chế ủy quyền trong Laravel
Viết Gates và Policies
Nội dung
Xây dựng website sử dụng Framework Bài 1: Giới thiệu Laravel framework PHP mã nguồn mở, mạnh mẽ dễ hiểu Nó tuân theo mẫu thiết kế model-view-controller Laravel sử dụng lại thành phần có khung khác để giúp tạo ứng dụng web Do đó, ứng dụng web thiết kế có cấu trúc thực dụng Laravel cung cấp tập hợp chức phong phú kết hợp tính framework PHP CodeIgniter, Yii ngơn ngữ lập trình khác Ruby on Rails Laravel có tính phong phú giúp tăng tốc độ phát triển web Nếu bạn quen thuộc với Core PHP Advanced PHP, Laravel giúp công việc bạn dễ dàng Nó tiết kiệm nhiều thời gian bạn có kế hoạch phát triển trang web từ đầu Hơn nữa, trang web xây dựng Laravel an toàn ngăn chặn số công web Ưu điểm Laravel Khi bạn thiết kế ứng dụng web dựa Laravel, cung cấp cho bạn lợi sau: Ứng dụng web trở nên có khả mở rộng hơn, nhờ vào framework Laravel Tiết kiệm đáng kể thời gian việc thiết kế ứng dụng web, Laravel sử dụng lại thành phần từ framework khác việc phát triển ứng dụng web Nó bao gồm không gian tên giao diện, hữu ích việc tổ chức quản lý tài nguyên Composer Composer công cụ bao gồm tất dependencies thư viện Nó cho phép người dùng tạo dự án liên quan đến framework đề cập (ví dụ: dự án sử dụng cài đặt Laravel) Thư viện bên thứ ba cài đặt dễ dàng với trợ giúp composer LUONG VAN HIEU Tất dependencies ghi tệp composer.json đặt thư mục nguồn Artisan Giao diện dòng lệnh sử dụng Laravel gọi Artisan Nó bao gồm tập hợp lệnh hỗ trợ xây dựng ứng dụng web Các lệnh kết hợp từ framework Symphony Các tính Laravel Laravel cung cấp tính sau giúp trở thành lựa chọn lý tưởng để thiết kế ứng dụng web: Tính mơ đun: Laravel cung cấp 20 thư viện mơ-đun tích hợp giúp tăng cường ứng dụng Mỗi mơ-đun tích hợp với trình quản lý phụ thuộc Composer giúp dễ dàng cập nhật Khả kiểm tra: Laravel bao gồm tính trợ giúp giúp kiểm tra thơng qua trường hợp thử nghiệm khác Tính giúp trì mã theo yêu cầu Định tuyến (Routing): Laravel cung cấp cách tiếp cận linh hoạt cho người dùng để xác định routes ứng dụng web Định tuyến giúp mở rộng ứng dụng theo cách tốt tăng hiệu suất Quản lý cấu hình: Một ứng dụng web thiết kế Laravel chạy môi trường khác nhau, điều có nghĩa có thay đổi liên tục cấu hình Laravel cung cấp cách tiếp cận quán để xử lý cấu hình cách hiệu Trình tạo truy vấn ORM: Laravel kết hợp trình xây dựng truy vấn giúp truy vấn sở liệu phương thức chuỗi đơn giản khác Nó cung cấp ORM (Object Relative Mapper) triển khai ActiveRecord gọi Eloquent Xây dựng lược đồ (Schema Builder): Schema Builder trì định nghĩa lược đồ sở liệu mã PHP Nó trì theo dõi thay đổi liên quan đến di chuyển sở liệu Công cụ template: Laravel sử dụng công cụ Blade Template, ngôn ngữ template sử dụng để thiết kế khối bố cục phân cấp với khối xác định trước bao gồm nội dung động E-mail: Laravel bao gồm lớp mail giúp gửi thư có nội dung phong phú tệp đính kèm từ ứng dụng web LUONG VAN HIEU Xây dựng website sử dụng Framework Xác thực: Xác thực người dùng tính phổ biến ứng dụng web Laravel giảm bớt việc thiết kế xác thực bao gồm tính đăng ký, quên mật gửi lời nhắc mật Redis: Laravel sử dụng Redis để kết nối với phiên có đệm cho mục đích chung Redis tương tác với phiên trực tiếp Hàng đợi: Laravel bao gồm dịch vụ xếp hàng gửi email số lượng lớn công việc Cron định Các hàng đợi giúp hoàn thành nhiệm vụ cách dễ dàng mà chờ đợi nhiệm vụ trước hồn thành Event Command Bus: Laravel 5.1 bao gồm Command Bus giúp thực thi lệnh gửi kiện cách đơn giản Các lệnh Laravel hoạt động theo vòng đời ứng dụng LUONG VAN HIEU Bài 2: Cài đặt Laravel Để quản lý dependencies, Laravel sử dụng composer Hãy chắn bạn cài đặt composer hệ thống trước cài đặt Laravel Trong này, bạn hướng dẫn trình cài đặt Laravel Bạn phải làm theo bước đưa để cài đặt Laravel vào hệ thống: Bước - Truy cập URL sau tải xuống trình soạn thảo để cài đặt hệ thống https://getcomposer.org/download/ Bước - Sau composer cài đặt, kiểm tra cài đặt cách nhập lệnh composer dấu nhắc lệnh ảnh chụp hình sau Bước - Bây giờ, tập trung vào việc cài đặt framework hoàn chỉnh Giả sử tạo dự án tên test thư mục C:\xampp\htdocs Tại thư mục htdocs, mở command nhập lệnh sau: composer create-project prefer-dist laravel/laravel test Đầu lệnh đây: LUONG VAN HIEU Xây dựng website sử dụng Framework Framework Laravel cài đặt trực tiếp với nhánh phát triển (develop) bao gồm framework Bước - Lệnh cài đặt Laravel thư mục Bắt đầu dịch vụ Laravel cách thực lệnh sau php artisan serve Bước - Sau thực lệnh trên, bạn thấy hình bên dưới: LUONG VAN HIEU Bước - Sao chép URL gạch chân màu xám ảnh chụp hình mở URL trình duyệt Nếu bạn thấy hình sau, có nghĩa Laravel cài đặt thành công LUONG VAN HIEU Xây dựng website sử dụng Framework Bài 3: Cấu trúc ứng dụng Laravel Cấu trúc ứng dụng Laravel cấu trúc thư mục, thư mục tệp có dự án Khi tạo dự án Laravel, có cấu trúc ứng dụng hình Ảnh chụp nhanh hiển thị đề cập đến thư mục gốc Laravel, cụ thể dự án laravel Nó bao gồm thư mục tập tin khác Việc phân tích thư mục tệp, với chức chúng đưa đây: LUONG VAN HIEU App Nó thư mục ứng dụng (application) bao gồm tồn mã nguồn dự án Nó chứa kiện (events), ngoại lệ (exception) khai báo phần mềm trung gian (middleware) Thư mục ứng dụng bao gồm thư mục phụ khác giải thích bên dưới: Console Console chứa tệp Kernel.php định nghĩa câu lệnh artisan Exceptions Thư mục chứa tất phương thức cần thiết để xử lý trường hợp ngoại lệ Nó chứa tập tin handle.php xử lý tất ngoại lệ Http Thư mục http có thư mục cho controllers, middleware Thư mục Middleware bao gồm chế phần mềm trung gian, bao gồm chế lọc giao tiếp response request Thư mục controllers chứa controller project Providers Thư mục bao gồm tất Providers dịch vụ cần thiết để đăng ký kiện cho máy chủ core cấu hình ứng dụng Laravel Bootstrap Thư mục chứa tất tập lệnh bootstrap ứng dụng Nó chứa thư mục cụ thể cache, bao gồm tất tệp liên kết để lưu trữ ứng dụng web Bạn tìm thấy tệp app.php, khởi tạo tập lệnh cần thiết cho bootstrap Config Thư mục config bao gồm cấu hình khác tham số liên quan cần thiết cho hoạt động trơn tru ứng dụng Laravel Các tập tin khác thư mục config hiển thị hình ảnh Các tên file hoạt động theo chức liên quan đến chúng LUONG VAN HIEU Xây dựng website sử dụng Framework Database Như tên cho thấy, thư mục bao gồm tham số khác cho chức sở liệu Nó bao gồm ba thư mục đưa đây: Seeds - Chứa lớp sử dụng để tạo liệu thêm vào CSDL Migrations - Thư mục chứa file tạo chỉnh sửa liệu Factories - Thư mục sử dụng để tạo số lượng lớn ghi liệu Public Đây thư mục gốc giúp khởi tạo ứng dụng Laravel Nó bao gồm tệp thư mục sau: htaccess - Tập tin cung cấp cấu hình máy chủ javascript css - Những tệp coi assets sử dụng để chứa file js css index.php - Tập tin cần thiết để khởi tạo ứng dụng web Resources LUONG VAN HIEU Thư mục Resources chứa tệp giúp cải thiện ứng dụng web Các thư mục có thư mục mục đích chúng giải thích bên dưới: js - Thư mục file javascript cho ứng dụng scss - Thư mục chứa file css cho ứng dụng lang - Thư mục bao gồm cấu hình vị trí địa lý ngôn ngữ views - Views tệp HTML templates tương tác với người dùng đóng vai trị kiến trúc MVC Quan sát thư mục Resources làm phẳng thay có thư mục assets routes Thư mục routes, chứa tất điều khiển route (đường dẫn) project Chứa file route sẵn có: web.php, channels.php, api.php, console.php api file api.php, điều khiển route ứng dụng, route ứng dụng User (đăng ký, đăng nhập, ) web file web.php, điều khiển route view, route trang top, sản phẩm, Storage LUONG VAN HIEU 10 Bài 23: AJAX Ajax (Asynchronous JavaScript and XML - không đồng JavaScript XML) tập kỹ thuật phát triển web tận dụng nhiều công nghệ web sử dụng phía client để tạo ứng dụng Web không đồng Import thư viện jquery file view bạn để sử dụng hàm ajax jquery, sử dụng để gửi nhận liệu cách sử dụng ajax từ máy chủ Về phía máy chủ, bạn sử dụng hàm response() để gửi phản hồi đến máy khách phản hồi gửi với định dạng JSON, bạn xâu chuỗi hàm response hàm json() Cú pháp hàm json() json(string|array $data = array(), int $status = 200, array $headers = array(), int $options) Ví dụ Bước 1: Tạo file view có tên resources/views/message.php viết mã sau vào file Ví dụ AJAX function getMessage() { $.ajax({ type:'POST', LUONG VAN HIEU 112 Xây dựng website sử dụng Framework url:'/getmsg', data:{"_token": $('#token').val()}, success:function(data) { $("#msg").html(data.msg); } }); } Thông điệp thay sử dụng Ajax Click vào nút để thay thông điệp.