Zend Framework - Cấu trúc ứng dụng
Trong chương này, chúng ta hãy hiểu cấu trúc của ứng dụng Zend Framework. Cấu trúc củamyapp ứng dụng như sau -
├── composer.json
├── composer.lock
├── CONDUCT.md
├── config
│ ├── application.config.php
│ ├── autoload
│ │ ├── development.local.php
│ │ ├── development.local.php.dist
│ │ ├── global.php
│ │ ├── local.php.dist
│ │ ├── README.md
│ │ └── zend-developer-tools.local-development.php
│ ├── development.config.php
│ ├── development.config.php.dist
│ └── modules.config.php
├── CONTRIBUTING.md
├── data
│ └── cache
│ └── module-classmap-cache.application.module.cache.php ├── docker-compose.yml
├── Dockerfile
├── LICENSE.md
├── module
│ └── Application
│ ├── config
│ ├── src
│ ├── test
│ └── view
├── phpcs.xml
├── phpunit.xml.dist
├── public
│ ├── css
│ │ ├── bootstrap.css
│ │ ├── bootstrap.css.map
│ │ ├── bootstrap.min.css
│ │ ├── bootstrap.min.css.map
│ │ ├── bootstrap-theme.css
│ │ ├── bootstrap-theme.css.map
│ │ ├── bootstrap-theme.min.css
│ │ ├── bootstrap-theme.min.css.map
│ │ └── style.css
│ ├── fonts
│ │ ├── glyphicons-halflings-regular.eot
│ │ ├── glyphicons-halflings-regular.svg
│ │ ├── glyphicons-halflings-regular.ttf
│ │ ├── glyphicons-halflings-regular.woff
│ │ └── glyphicons-halflings-regular.woff2
│ ├── img
│ │ ├── favicon.ico
│ │ └── zf-logo-mark.svg
│ ├── index.php
│ ├── js
│ │ ├── bootstrap.js
│ │ ├── bootstrap.min.js
│ │ └── jquery-3.1.0.min.js
│ └── web.config
├── README.md
├── TODO.md
├── Vagrantfile
└── vendor
├── autoload.php
├── bin
│ ├── phpunit -> ../phpunit/phpunit/phpunit
│ ├── templatemap_generator.php -> ../zendframework/zend-
view/bin/templatemap_generator.php
│ └── zf-development-mode -> ../zfcampus/zf-development-mode/bin/zf-
development-mode
├── composer
│ ├── autoload_classmap.php
│ ├── autoload_namespaces.php
│ ├── autoload_psr4.php
│ ├── autoload_real.php
│ ├── ClassLoader.php
│ ├── installed.json
│ └── LICENSE
├── container-interop
│ └── container-interop
├── doctrine
│ └── instantiator
├── myclabs
│ └── deep-copy
├── phpdocumentor
│ ├── reflection-common
│ ├── reflection-docblock
│ └── type-resolver
├── phpspec
│ └── prophecy
├── phpunit
│ ├── php-code-coverage
│ ├── php-file-iterator
│ ├── php-text-template
│ ├── php-timer
│ ├── php-token-stream
│ ├── phpunit
│ └── phpunit-mock-objects
├── sebastian
│ ├── code-unit-reverse-lookup
│ ├── comparator
│ ├── diff
│ ├── environment
│ ├── exporter
│ ├── global-state
│ ├── object-enumerator
│ ├── recursion-context
│ ├── resource-operations
│ └── version
├── symfony
│ └── yaml
├── webmozart
│ └── assert
├── zendframework
│ ├── zend-component-installer
│ ├── zend-config
│ ├── zend-console
│ ├── zend-dom
│ ├── zend-escaper
│ ├── zend-eventmanager
│ ├── zend-http
│ ├── zend-loader
│ ├── zend-modulemanager
│ ├── zend-mvc
│ ├── zend-router
│ ├── zend-servicemanager
│ ├── zend-stdlib
│ ├── zend-test
│ ├── zend-uri
│ ├── zend-validator
│ └── zend-view
└── zfcampus
└── zf-development-mode
73 directories, 55 files
Ứng dụng Zend Framework bao gồm các thư mục khác nhau. Chúng như sau:
Application- Thư mục này chứa ứng dụng của bạn. Nó sẽ chứa hệ thống MVC, cũng như các cấu hình, dịch vụ được sử dụng và tệp bootstrap của bạn.
Config - Thư mục này chứa các tệp cấu hình của một ứng dụng.
Data - Thư mục này cung cấp một nơi lưu trữ dữ liệu ứng dụng dễ bay hơi và có thể là tạm thời.
Module - Mô-đun cho phép một nhà phát triển nhóm một tập hợp các bộ điều khiển liên quan thành một nhóm được tổ chức hợp lý.
Public- Đây là gốc tài liệu của ứng dụng. Nó khởi động ứng dụng Zend. Nó cũng chứa các tài sản của ứng dụng như JavaScript, CSS, Hình ảnh, v.v.
Vendor - Thư mục này chứa các phụ thuộc của nhà soạn nhạc.
Cấu trúc của các mô-đun ứng dụng
Đây là thư mục chính của ứng dụng của bạn. Zend Framework 2 giới thiệu một hệ thống mô-đun mạnh mẽ và linh hoạt để tổ chức ứng dụng một cách hiệu quả. CácApplicationmô-đun của ứng dụng khung (myapp) cung cấp cấu hình khởi động, lỗi và định tuyến cho toàn bộ ứng dụng. Cấu trúc củaApplication mô-đun như hình dưới đây -
├── module
│ └── Application
│ ├── config
│ │ └── module.config.php
│ ├── src
│ │ ├── Controller
│ │ │ └── IndexController.php
│ │ └── Module.php
│ ├── test
│ │ └── Controller
│ │ └── IndexControllerTest.php
│ └── view
│ ├── application
│ │ └── index
│ │ └── index.phtml
│ ├── error
│ │ ├── 404.phtml
│ │ └── index.phtml
│ └── layout
│ └── layout.phtml
Hãy để chúng tôi trình bày chi tiết từng thư mục mô-đun này -
Application- Đây là thư mục gốc của module. Tên của thư mục sẽ khớp với tên của mô-đun và tên cũng được sử dụng làm không gian tên PHP của tất cả các lớp được định nghĩa bên trong mô-đun. Nó sẽ chứa hệ thống MVC, cũng như các cấu hình, dịch vụ được sử dụng và tệp bootstrap của bạn.
Config - Cấu hình độc lập của mô-đun.
Src - Logic nghiệp vụ chính của ứng dụng.
View- Chứa các tệp thiết kế / trình bày (HTML). Ví dụ: index.phtml.
src/Module.php- Nó là trái tim của mô-đun. Nó hoạt động như một "bộ điều khiển phía trước" cho mô-đun. Quy trình Zendsrc/Module.php trước khi xử lý bất kỳ Lớp PHP nào trong mô-đun này.
Application/config/module.config.php - Nó được thực hiện cho cấu hình bộ định tuyến và tự động tải tệp.
Application/view/layout- Bố cục thể hiện các phần chung của nhiều khung nhìn. Ví dụ, đầu trang và chân trang của trang. Theo mặc định, bố cục sẽ được lưu trữ trongviews/layoutsfolder.
Tất cả các mô-đun có cùng cấu trúc hoặc cấu trúc tương tự như cấu trúc của mô-đun Ứng dụng ở trên .