- vừa được xem lúc

Từng bước học lập trình PHP cơ bản qua dự án website giới thiệu sản phẩm (Phần 2: Cấu trúc thư mục web)

0 0 16

Người đăng: Lê Trung Hiếu

Theo Viblo Asia

Trong ứng dụng web, việc bố trí cấu trúc thư mục web phần nào ảnh hưởng tới quá trình viết mã lệnh ứng dụng. Để cho cấu trúc thư mục web được rõ ràng, tường minh và quan trọng đó là khả năng mở rộng ứng dụng mà không làm thay đổi cấu trúc ban đầu thì các bạn cần phải xây dựng cho ứng dụng của mình một cấu trúc tốt trước khi bắt đầu viết mã lệnh đầu tiên.

Mỗi phong cách viết khác nhau có thể các bạn sẽ có những cấu trúc khác nhau. Vì vậy, tôi cũng không yêu cầu các bạn tuân theo cấu trúc của tôi đưa ra nhưng để tiện lợi trong quá trình theo dõi loạt bài viết này thì các bạn nên bố trí cấu trúc thư mục web như của tôi cho thuận tiện.

Cấu trúc thư mục web mà tôi đề nghị như sau:

admin
configs
extends
libraries
models
views
-----admin
-----front
templates
-----admin
-----front
userfiles

Trong đó:

  • admin: Chứa các tập tin xử lý của trang quản trị.
  • configs: Chứa các tập tin cấu hình website.
  • extends: Chứa các thành phần mở rộng (Bộ soạn thảo...).
  • libraries: Chứa thư viện cần thiết để lập trình.
  • models: Chứa các tập tin xử lý tương tác với DB (Lấy dữ liệu, thêm mới, chỉnh sửa, xóa...).
  • views: Chứa các tập tin giao diện HTML của website. Tôi chia thành hai nhóm là admin (Trang quản trị) và front (Trang người dùng).
  • templates: Chứa các tập tin CSS, JS, hình ảnh... Tôi cũng chia làm hai nhóm là admin và front.
  • userfiles: Chứa các tập tin do người dùng tải lên.

Mỗi trang của ứng dụng web tôi đã chia thành ba phần như sau:

  • Trang xử lý: Chứa mã lệnh PHP xử lý các yêu cầu từ người dùng và trả kết quả lại cho người dùng.
  • Model: Thành phần tương tác trực tiếp với DB. Mỗi bảng dữ liệu trong DB tôi sẽ có một tập tin tương ứng trùng tên với bảng dữ liệu đó và đặt trong thư mục models để dễ kiểm soát.
  • View: Thành phần giao diện HTML của website. Thành phần này sẽ nhận kết quả trả lại từ trang xử lý để trình bày dữ liệu đó theo giao diện HTML đã thiết kế.

Với cấu trúc như trên, tôi đã tách tối đa phần mã lệnh PHP với mã lệnh HTML để giúp mã lệnh web trở nên trong sáng hơn, dễ bảo trì, nâng cấp hơn. Trên đây là cấu trúc thư mục web mà tôi đề nghị với các bạn, tuỳ vào yêu cầu, sở thích riêng của mình mà các bạn có thể tự xây dựng cho riêng mình một cấu trúc hợp ý hơn.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Cài đặt WSL / WSL2 trên Windows 10 để code như trên Ubuntu

Sau vài ba năm mình chuyển qua code trên Ubuntu thì thật không thể phủ nhận rằng mình đã yêu em nó. Cá nhân mình sử dụng Ubuntu để code web thì thật là tuyệt vời.

0 0 376

- vừa được xem lúc

Phân quyền đơn giản với package Laravel permission

Như các bạn đã biết, phân quyền trong một ứng dụng là một phần không thể thiếu trong việc phát triển phần mềm, dù đó là ứng dụng web hay là mobile. Vậy nên, hôm nay mình sẽ giới thiệu một package có thể giúp các bạn phân quyền nhanh và đơn giản trong một website được viết bằng PHP với framework là L

0 0 421

- vừa được xem lúc

Sử dụng Swagger để xây dựng API documentation

Giới thiệu về Swagger. RESTful API là một tiêu chuẩn dùng trong việc thiết kế API cho các ứng dụng web (thiết kế Web services) để tiện cho việc quản lý các resource.

0 0 1k

- vừa được xem lúc

So sánh Interface và Abstract trong lập trình hướng đối tượng.

Tổng quan. Interface và Abstract class là 2 khái niệm cơ bản trong lập trình OOP.

0 0 49

- vừa được xem lúc

CURL và cách sử dụng trong PHP

Giới Thiệu. CURL là bộ thư viện được sử dụng để giúp thực hiện việc chuyển dữ liệu thông qua nhiều giao thức khác nhau (như HTTP, FPT...). Với giao thức HTTP, cURL hỗ trợ việc gửi dữ liệu sử dụng tất cả các phương thức hiện có như GET, POST, PUT, DELETE... cURL cũng hỗ trợ việc chuyền dữ liệu sử dụn

0 0 81

- vừa được xem lúc

Thêm dòng dữ liệu mới (MySQL) trong Laravel

Chào các bạn, Laravel hiện đang là hot trend trong "thế giới PHP". 1. Cấu hình cơ bản ban đầu. .

0 0 38