Zend 프레임 워크-애플리케이션 구조
이 장에서는 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 애플리케이션은 서로 다른 폴더로 구성됩니다. 그들은 다음과 같습니다-
Application−이 디렉토리에는 응용 프로그램이 포함되어 있습니다. MVC 시스템은 물론 구성, 사용 된 서비스 및 부트 스트랩 파일을 수용합니다.
Config −이 디렉토리에는 응용 프로그램의 구성 파일이 포함되어 있습니다.
Data −이 디렉토리는 일시적이고 일시적 일 수있는 애플리케이션 데이터를 저장할 장소를 제공합니다.
Module − 모듈을 통해 개발자는 관련 컨트롤러 세트를 논리적으로 구성된 그룹으로 그룹화 할 수 있습니다.
Public− 이것은 응용 프로그램의 문서 루트입니다. Zend 응용 프로그램을 시작합니다. 또한 JavaScript, CSS, 이미지 등과 같은 애플리케이션의 자산도 포함됩니다.
Vendor −이 디렉토리는 작곡가 종속성을 포함합니다.
애플리케이션 모듈의 구조
이것은 애플리케이션의 기본 디렉토리입니다. Zend Framework 2는 강력하고 유연한 모듈 시스템을 도입하여 애플리케이션을 효율적으로 구성합니다. 그만큼Application스켈레톤 애플리케이션 (myapp) 의 모듈은 전체 애플리케이션에 대한 부트 스트랩, 오류 및 라우팅 구성을 제공합니다. 의 구조Application 모듈은 다음과 같습니다-
├── 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
각 모듈 디렉토리를 자세히 다루겠습니다.
Application− 이것은 모듈의 루트 디렉토리입니다. 폴더 이름은 모듈 이름과 일치하며 이름은 모듈 내에 정의 된 모든 클래스의 PHP 네임 스페이스로도 사용됩니다. MVC 시스템은 물론 구성, 사용 된 서비스 및 부트 스트랩 파일을 수용합니다.
Config − 모듈의 독립적 구성.
Src − 애플리케이션의 주요 비즈니스 로직.
View− 디자인 / 프레젠테이션 (HTML) 파일이 포함되어 있습니다. 예를 들면 index.phtml입니다.
src/Module.php− 모듈의 핵심입니다. 모듈의 "전면 컨트롤러"로 작동합니다. 젠드 프로세스src/Module.php 이 모듈의 PHP 클래스를 처리하기 전에 파일.
Application/config/module.config.php − 라우터 설정 및 파일 자동 로딩을 위해 구현됩니다.
Application/view/layout− 레이아웃은 여러보기의 공통 부분을 나타냅니다. 예 : 페이지 머리글 및 바닥 글. 기본적으로 레이아웃은views/layoutsfolder.
모든 모듈은 위의 Application 모듈 과 동일하거나 유사한 구조를 공유합니다 .