Zend Skeleton Application
Zend Framework là bộ khung chứa rất nhiều thư viện sử dụng nhiều khái niệm mới, nhiều mô hình lập trình khác nhau, nên trước khi học về ZF bạn cần lưu ý đã học qua các đơn vị kiến thức sau:
- Nắm vững PHP cơ bản
- Viết mã HTML, CSS và tìm hiểu thêm về Getbootstrap.
- Sử dụng JavaScript, tìm hiểu thêm về jQuery
- Đọc qua các mô hình lập trình: OOP, MVC, OB, AOP ...(câp nhật tại Thuật ngữ)
Như đã biết Zend Framework (ZF) có rất nhiều thành phần, tùy cách phối hợp giữa các thành phần đó để tạo nên ứng dụng riêng, trong đó Zend Skeleton Application như là một ứng dụng khung của ZF, là một mẫu chuẩn ứng dụng. Để học ZF cách tốt là bắt đầu cài đặt và tìm hiểu về Zend Skeleton vì nó chứa các thành phần cơ bản, đơn giản của ZF nhằm mục đích tạo ra một website
Zend Skeleton lưu trữ trên GitHub, theo đường link sau: Zend Skeleton
Tuy nhiên, bạn nên tải về bằng cách sử dụng Composer (cài đặt và dùng Composer):
Để thực hành bạn cần tạo một thư mục dự án PHP (ví dụ thư mục C:/wamp64/www/zf3, bạn thiết lập thư mục đó truy cập được bằng http://localhost/zf3, hoặc domain ảo hoặc đường dẫn theo cách nào đó) sau đó mở cmd, chuyển vào thư mục đó gõ lệnh Composer như sau:
composer create-project -s dev zendframework/skeleton-application C:/wamp64/www/zf3
Khi chạy lệnh, khi hỏi minimal install trả lời n, còn lại nên trả lời y cho các tùy chọn. Với các câu hỏi về cách inject module bạn nên chọn 1 (config/modules.config.php)
Sau khi cài đặt xong, vào trình duyệt gõ địa chỉ http://localhost/zf3/public/
(địa chỉ trỏ tới folder cài đặt zf2, tùy thuộc vào cấu hình LAMP của bạn mà có thể khác,
hoặc bạn tử cấu hình domain ảo trỏ vào địa chỉ đó), Zend Skeleton xuất hiện với giao diện ban đầu như hình
Tức là Website chạy bắt đầu từ file index.php
trong thư mục public của dự án.
Giờ bạn dùng một IDE hỗ trợ PHP, HTML, CSS nhử PHPStorm, Eclipse (free), NetBeans IDE, Zend Studio ... để mở thư mục dự án và bắt đầu nghiên cứu về ZF
Loại bỏ public trong URL
Nếu muốn gõ đĩa chỉ ở local là http://localhost/zf3/ chứ không phải http://localhost/zf3/public/ thì làm như sau:
- Di chuyển file index.php trong public ra thư mục gốc dự án. Mở file ra chỗ nào có
/../
thay bằng/
, xóa dòng cóchdir(dirname(__DIR__));
- Mở file
\module\Application\view\layout.phtml
, chỗ nào có$this->basePath('
thay bằng$this->basePath('public/
- Copy .httaccess ra thư mục gốc
Cấu trúc thư mục của Skeleton ZF
Zend Framework tùy biến cấu trúc thư mục tự do, tuy nhiên hãy theo nguyên tắc phổ biến đưa ra bởi chương trình khung. Bạn mở thư mục dự án ra, và cơ bản nó tổ chức như hình
- config chứa các file thiết lập của Website
- data nơi lưu dữ liệu (ví dụ cache, files ...)
- module chứa các module ứng dụng (các module mà bạn dùng ZF tạo ra, cơ bản code PHP ứng dụng của bạn ở đây)
- public lưu trữ những file thường xuyên truy cập bởi người dùng, như css, img, js trong thư mục con:
- css
- js
- img
- fonts
- vendor thư viện dùng bởi Website, đó là các Dependence (thành phần bên thứ 3 bạn dùng tới,
các thành phần này được tải về theo cấu hình của
composer.json
), thư viện ZF ở đây
Tắt ZendDeveloperTools
Bạn quan sát khi chạy ứng dụng khung Zend Framework với cách cài đặt như trên, nó có một thanh ở phía dưới trang web, nó là cung cụ trợ giúp mạnh giúp bạn giám sát trong quá trình phát triển ứng dụng, tuy nhiên ở thời điểm này tạm thời tắt đi.
Mở file modules.config.php
trong thư mục config
thêm comment //
vào trước dòng ZendDeveloperTools
thành //ZendDeveloperTools
Ở đây sử dụng phiên bản 3.x mới nhất của Zend Framework, nó yêu cầu PHP 7.x trở lên