Dự án 1 lập trình web fpt polytechnic
Phát hành: 22/2/2024
Bạn có đang gặp khó trong quá trình làm dự án 1 tại cao đẳng FPT ?
Full source code liên hệ mình
Chắc chắn bài viết này dành cho bạn, trong bài này mình sẽ hướng dẫn các bạn cấu trúc thư mục dự án, tổ chức code tái sự dụng để dự án 1 trở lên nhàn nhất có thể.
Cấu trúc thư mục
- File
index.php
file gốc tập trung các file cần thiết - File
routes.php
lữu các tuyến đường của trang người dùng - File
utils.php
chứa các function sử dụng nhiều nơi như uploadImage - File
core.php
chức các function chính tạo nên website - File
config.php
chứa các cấu hình như VN_Pay - Folder
views
chưa giao diện người dùng và quản trị - Folder
controllers
chứa function tương tác với models rồi trả về view - Folder
models
chứa các function tương tác với database - Folder
database
kết nối database và function tương tác tái sử dụng - Folder
admin
như 1 tuyến đường cho nhà quản trị, nó cũng có fileindex.php
vàrouter.php
- Folder
asset
chưa js, css, image - Folder
PHPMailer
thư viện gửi mail
Tổng quan mô hình MVC
Nếu bạn chưa biết đến mô hình MVC thì có thể là khó hiểu nhưng đừng lo, bạn có thể đọc tài liệu trên google, để mình giới thiệu qua về mô hình MVC.
MCV viết tắt của Module Controller View, khi một website được chạy nơi tiếp nhận yêu cầu là controller
nó sẽ tương tác với models
, models
là nơi tương tác với database từ đó lấy được dữ liệu kết hợp với view
và trả view về cho người dùng.
Mô tả hoạt động
Tại file index.php
mình sử dụng 1 vòng for
để lặp qua mảng $routers
thay vì khai báo từ cái như dự án mẫu mình làm như vậy sẽ nhanh và khai khai báo các tuyến đường các cũng nhẹ nhàng hơn.
Trong file core.php
mình có function route
khi gọi hàm này nó sẽ trả về cho mình 1 mảng
Mảng này có view
thực chất là 1 function, path
là đường dẫn, role
phân quyền người dùng, khi khai báo nhiều tuyến đường sẽ được kết quả như sau.
Khi ta lặp qua mảng này nó khớp với path
nào thì ta sẽ gọi view
nó chính là 1 function và chạy vào controller, trong controller
ta sẽ tương tác với models
và trả về view thông qua fucntion view()
trong file core.php
hoặc viewAdmin()
nếu là giao diện của trang quản trị.
Trong folder database
dùng để kết nối đến database và chứa các function được tái sử dụng như getOne
insert
bởi vì models nào cũng có lấy 1 và tạo
Để kế thừa được nó các cần biết về class
trong folder models
được khai báo các đối tượng sản phẩm, danh mục và kế thừa lại những function đó mà không cần khai báo lại.
Đối với hoạt động của trang quản trị cũng tượng tự.
Phần kết
Các tổ chức và tạo nên thư viện nó hơi lạ, vì đây là mình tự nghĩ ra và cũng tham khảo mô hình MVC, nếu bạn cảm thấy khó có thể dùng cách dự án mẫu tại đây.
Core projectĐừng quên là mình nhận hỗ trợ dự án 1 lập trình website và phát triển phần mềm
Chúc các bạn thành công !
Cảm ơn bạn ghé thăm
Có thể bạn sẽ thích