Yii2具有新的和改进的应用程序结构。它使用作曲家来管理其依赖项。 Yii1只有一个基本的应用程序结构。 Yii2具有基本以及高级的应用程序结构。
Yii2将整个应用程序分为以下几部分:
- 后端:用于后端Web开发
- 通用:包括所有应用程序的通用文件
- 控制台:控制台应用程序
- 环境:环境配置
- 前端:用于前端Web开发
Yii2目录结构
ROOT
/ contains the frontend entry script and web resources
/assets contains the frontend web assets
common
config/ contains shared configurations
mail/ contains view files for e-mails
models/ contains model classes used in both backend and frontend
tests/ contains various tests for objects that are common among applications
console
config/ contains console configurations
controllers/ contains console controllers (commands)
migrations/ contains database migrations
models/ contains console-specific model classes
runtime/ contains files generated during runtime
tests/ contains various tests for the console application
backend
assets/ contains application assets such as JavaScript and CSS
config/ contains backend configurations
controllers/ contains Web controller classes
models/ contains backend-specific model classes
runtime/ contains files generated during runtime
tests/ contains various tests for the backend application
views/ contains view files for the Web application
web/ contains the entry script and Web resources
frontend
assets/ contains application assets such as JavaScript and CSS
config/ contains frontend configurations
controllers/ contains Web controller classes
models/ contains frontend-specific model classes
runtime/ contains files generated during runtime
tests/ contains various tests for the frontend application
views/ contains view files for the Web application
vendor/ contains dependent 3rd-party packages
environments/ contains environment-based overrides
资产
资产捆绑包用于包含JavaScript和样式表。许多评估和缓存是通过资产完成的。
Web目录中还有一个资产文件夹。 Yii使用此文件夹来缓存资产。该文件夹中将有一个.gitignore。
如果需要更新JavaScript或CSS文件, 则需要删除此目录中的所有文件夹。它们可以随时删除, 也可以由Yii自动生成为缓存文件。
命令
该目录允许你创建要运行的Yii管理脚本。这些命令可以通过在Yii根目录上输入php yii或./yii在命令行上执行。默认情况下, 它将显示一个可用命令列表。
配置
config文件夹包括配置设置, 其中包括电子邮件发送, 数据库连接等。
控制器
控制器在MVC框架中管理数据流量。发出请求时, 将由控制器处理该请求。
邮件
它存储Yii用来构造邮件的模板。
楷模
模型管理MVC中的所有数据库工作。与数据库相关的任何类型的编码都以模型形式编写。
运行
在处理Web请求期间使用此文件夹。
测试
此文件夹检查功能。
供应商
Yii源文件位于此目录中。第三方安装的模块将存储在此处。升级期间, 此文件夹中的代码将被覆盖, 因此应避免此目录中的代码更改。
意见
MVC中的视图包含根据Web请求显示的页面。所有的HTML编码都在view目录中完成。
网络
这是Web服务器指向的文档根目录。当被调用时, index.php文件启动Yii进程。在此文件中, 可以打开或关闭调试代码。调试栏在页面底部可见。
在这里, 你可以放置任何文件, 图像或任何其他需要Web访问的文件。将仅访问放置在此文件夹中的文件。
在此Web目录中, 还存在一个名为asset的子目录。该目录用于响应Web请求。