在本章中,让我们了解Zend Framework应用程序的结构。myapp应用程序的结构如下-
├── 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
Zend Framework应用程序由不同的文件夹组成。它们如下-
- 应用程序-此目录包含您的应用程序。它包含MVC系统以及配置,使用的服务和引导文件。
- Config-此目录包含应用程序的配置文件。
- 数据-此目录提供了存储易失性和临时性应用程序数据的位置。
- 模块-模块允许开发人员将一组相关的控制器分组为逻辑组织的组。
- 公共-这是应用程序的文档根目录。它启动Zend应用程序。它还包含应用程序的资产,例如JavaScript,CSS,图像等。
- 供应商-此目录包含作曲家依赖性。
应用模块的结构
这是您的应用程序的主目录。Zend Framework 2引入了强大而灵活的模块系统,可以有效地组织应用程序。框架应用程序(myapp)的应用程序模块为整个应用程序提供引导程序,错误和路由配置。应用程序模块的结构如下所示-
├── 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
让我们详细介绍每个模块目录-
- 应用程序-这是模块的根目录。文件夹的名称将与模块的名称匹配,并且该名称还用作模块内定义的所有类的PHP名称空间。它将包含MVC系统以及配置,使用的服务和引导文件。
- Config-模块的独立配置。
- Src-应用程序的主要业务逻辑。
- 视图-包含设计/演示文稿(HTML)文件。例如,index.phtml。
- src / Module.php-这是模块的核心。它充当模块的“前端控制器”。Zend在处理此模块中的任何PHP类之前,先处理src / Module.php文件。
- Application / config / module.config.php-用于路由器配置和自动加载文件。
- 应用程序/视图/布局-布局表示多个视图的公共部分。例如,页面页眉和页脚。默认情况下,布局应存储在views / layoutsfolder中。
所有模块都具有与上述应用程序模块相同或相似的结构。
作者:terry,如若转载,请注明出处:https://www.web176.com/zendframework/302.html