整个代码库中只有一个文件夹可供Web服务器公开使用。这是Web目录。Web根目录之外的其他文件夹对于Web服务器而言无法访问。
注–所有项目依赖项都位于composer.json文件中。Yii2具有一些重要的软件包,Composer已将它们包含在您的项目中。这些软件包如下-
前三个软件包仅在开发环境中有用。
Yii2的应用程序结构精确而清晰。它包含以下文件夹-
以下是应用程序结构的示意图:
以下列表包含所有Yii2的对象-
模型用于数据表示(通常来自数据库)。视图用于显示数据。控制器用于处理请求并生成响应。
为了创建可重用的功能,用户可以编写自己的组件。组件只是包含逻辑的对象。例如,组件可以是重量转换器。
这些对象在整个应用程序中仅实例化了一次。组件和应用程序组件之间的主要区别在于,后者在整个应用程序中只能有一个实例。
窗口小部件是可重复使用的对象,包含逻辑和渲染代码。小部件可以是例如图库滑块。
过滤器是在执行Controller动作之前或之后运行的对象。
您可以将模块视为可重用的子应用程序,其中包含模型,视图,控制器等。
扩展是可以由Composer管理的软件包。