MVC nâng cao 01 – Tổ chức cơ bản của một ứng dụng MVC

0
575

[ VIDEO TUT ]

  • Đang cập nhật…
Bấm Subscribe Nhận video học mới nhất :

1. Giới thiệu

Xin chào các bạn, hôm nay tôi lại sắp xếp được thời gian để quay trở lại với các bạn trong loạt bài về MVC nâng cao. Loạt bài này tôi sẽ kết hợp mô hình MVC với lập trình hướng đối tượng thông qua một ví dụ thực tế. Để có thể học tốt được loạt bài này thì những bạn chưa biết gì về MVC nên xem qua loạt bài MVC trong PHP cơ bản của tôi nhé.

2. Cấu trúc thư mục ban đầu

1

Trong đó

  • Thư mục models: Chứa các file lưu trữ dữ liệu, tương tác với CSDL
  • Thư mục views: Chứa các file giao diện hiển thị hoặc giao diện nhận dữ liệu trả về từ Controller
  • Thư mục controllers: Chứa các file Controller chuyên để xử lý và điều hướng dữ liệu
  • Thư mục library: Chứ các file tiện ích kiểu thư viện như kết nối, autoload,…
  • File chạy chính index.php: Ứng dụng của chúng ta luôn luôn và chỉ chạy duy nhất một file này, còn lại tất cả các file khác đề chạy ngầm dưới file chạy chính này.

3. Tổ chức tệp tin

Loạt này bài này tôi sẽ hướng dẫn các bạn xây dựng một ứng dụng nhỏ liên quan đến quản lý thành viên, nghe có vẻ đao to búa lớn nhưng thực chất chủ yếu là liệt kê dữ liệu theo mô hình MVC, còn ứng dụng hoàn chỉnh và phức tạp có kết nối CSDL và những thuật toán lằng nhằng thì xin hẹn các bạn vào một Video Tut khác khi tôi có nhiều thời gian hơn. Tuy nhiên nếu như các bạn nắm chắc phần này thì hoàn toàn có khả năng tự xây dựng được một ứng dụng phức tạp (website hoàn chỉnh chẳng hạn) bằng MVC rồi nhé.

Trong thư mục models các bạn tạo cho tôi thư mục con user (để quản lý chức năng user), đồng thời trong thư mục user thì các bạn tạo tiếp cho tôi một lớp User (User.php) để xử lý các theo tác liên quan đến User như: login, add, edit, del, listed,…

2

Nội dung code của file lớp User này sẽ như sau:

Tiếp đến là thư mục library, thư mục trong ứng dụng này của tôi chỉ chứ duy nhất file __autoload.php để xử lý triệu gọi lớp một cách tự động khi đối tượng được khởi tạo, trong này cũng có thể đặt lớp Database nếu các bạn cần sử dụng đến nó trong ứng dụng.

3

Nội dung code của file __autoload.php này sẽ như sau:

Tiếp theo là tổ chức tệp tin của thư mục controllers. Trong thư mục này các bạn cũng tạo cho tôi thư mục user để quản lý các thao tác với User. Trong thư mục user các bạn lại tạo tiếp cho tôi các file theo cấu trúc sau:

4

Trong đó

  • user.php là Controller chính trong chức năng quản lý User này (tùy vào tham số GET nhận được là gì thì nó sẽ triệu gọi các Controller con tương ứng)
  • Các file như login.php, add.php, edit.php, del.php. listed.php là những Controller con cho từng hành động cụ thể như đăng nhập, thêm, sửa, xóa, liệt kê.

Nội dung code của Controller chính (User.php) sẽ như sau:

Đến thư mục views, thư mục này các bạn tạo thêm cho tôi một thư mục con user để chứa các giao diện của chức năng quản lý User, đồng thời các bạn tạo luôn các file giao diện phục vụ chức năng này trong thư mục user mới tạo nhé

5

Cuối cùng là file chạy chính index.php, file này xử dụng để triệu gọi các thư viện (SESSION, Autoload,…), gọi các Controller phù hợp để xử lý khi có các tham số GET Controller được truyền lên.

Và nội dung code của file này như sau:

Trên đây là cấu trúc cơ bản của một ứng dụng theo mô hình MVC, ở các bài tiếp theo chúng ta sẽ hoàn thiện các chức năng của ứng dụng dự hoàn toàn trên tổ chức thư mục và tệp tin của bài này nhé.

[ SOURCE CODE ]

  • Code mẫu của bài viết này, các bạn vui lòng download ở đây Source code

Xem các bài học khác về mô hình mvc tại đây:

Thầy Giáo Quốc Dân: Tuấn Hoàng

[Total: 2    Average: 3.5/5]

LEAVE A REPLY

Please enter your comment!
Please enter your name here