Hướng dẫn simple mvc php framework
1. Giới thiệu về MVC1.1. Định nghĩaMVC là một mô hình thiết kế, giúp bạn tổ chức code theo từng phần độc lập với nhau, và các phần tương tác với nhau theo một cách nhất định. Show
1.2. Cách mà mô hình hoạt độngTrình duyệt gửi một request lên server, server nhận được request sẽ phân tích và gửi dữ liệu vào controller dựa vào router điều hướng. Trong vài trường hợp thì controller sẽ render luôn ra view (một template được chuyển thành HTML) và gửi trả về cho trình duyệt. Nhưng thông thường, cho các trang web động, controller sẽ tương tác với một model (đại diện cho một phần tử ví dụ như Post, chịu trách nhiệm giao tiếp với cơ sở dữ liệu). Sau khi gọi vào model, controller sẽ render view với dữ liệu lấy được và trả kết quả về cho trình duyệt để hiển thị. 2. Xây dựng ứng dụng2.1. Cấu trúc thư mục
Giải thích về cấu trúc thư mục trên:
2.2. Cơ sở dữ liệuTrước hết, hãy tạo một cơ sở dữ liệu đơn giản có tên là demo_mvc có bảng posts với 3 trường: id (INT PRIMARY auto_increment), title (VARCHAR 255), content (TEXT) Bắt tay vào code thôi nào. 2.3. Điều hướng luồng dữ liệuĐầu tiên, tạo file
File này sẽ là file nhận mọi yêu cầu truy vấn lên server. Bởi vậy, mọi đường dẫn truy cập đều phải có dạng
Bạn cần chỉnh sửa lại phần
2.4. Xây dựng BaseControllerMình sẽ tạo 1 lớp
Hãy tạo file
2.5. Xây dựng các trang tĩnhGiờ chúng ta sẽ viết controller đầu tiên cho hệ thống, đó là
Trong thư mục
Bây giờ bạn thử truy cập đến trang 2.6. Xây dựng module Post2.6.1. Hiển thị tất cả bài viếtTạo file
Tạo file
Tạo thư mục
Giờ nếu truy cập vào
Và giờ bạn vào db tạo một số dữ liệu mẫu và truy cập thử trang 2.6.2. Hiển thị nội dung một bài viếtCập nhật model Post bổ sung thêm hàm
Thêm action
Tạo view cho show Post: Tạo file show.php trong thư mục
Bổ sung thêm action
Cập nhật link ở trang index, trỏ đến trang show post:
Và bây giờ truy cập thử 1 link: 3. Tổng kếtTrên đây là hướng dẫn tạo một ứng dụng PHP thuần sử dụng mô hình MVC dựa trên sự hiểu biết của mình. Bạn có thể áp dụng tư tưởng trên để tiếp tục tự làm thử phần sửa nội dung bài viết, hay xoá bài viết... Nếu có gì góp ý hay thắc mắc, hãy comment phía dưới nhé. Mọi ý kiến đều được hoan nghênh ạ! Cảm ơn vì đã quan tâm đến bài viết. |