Yii应用(2)
1. Yii层次结构
Yii是个经典的Model-View-Controller (MVC)结构,利用Yii可以快速的构建WEB系统,维护也很方便,本人最喜欢的就是挂件,设置得非常合理,要想深入的了解Yii首先要了解它的工作步骤,然后分析源码,结构图如下:
首先来对整个结构来说明一下:
index.php系统应用的入口。
application Yii框架中的CWebApplication实例。
app components Yii框架应用组件,包括:request,user,db等。
controller 控制器,主要用户编写。
model 模型。
view 视图。
widget 挂件。
Yii的处理流程步骤如下:
1. 用户访问/index.php?r=site/show&id=1,Web 服务器执行入口脚本 index.php 来处理该请求。
2. 入口脚本建立一个application应用实例并运行之,具体访问可通过Yii::app()。
3. 应用从一个叫 request 的应用组件获得详细的用户请求信息,具体访问可通过Yii::app()->request。
4. 在名为 urlManager 的应用组件的帮助下,r=site/show确定用户要请求的控制器Controller为site和动作Action为show。
5. 应用建立一个被请求的控制器实例来进一步处理用户请求,控制器确定由它的actionShow 方法来处理 show 动作。然后它建立并应用和该动作相关的过滤器(比如访问控制和性能测试的准备工作),如果过滤器允许的话,动作被执行。
6. 动作从数据库读取一个 ID 为 1 的 site 模型。
7. 动作使用 site 模型来渲染一个叫 show 的视图。
8. 视图读取 site模型的属性并显示之。
9. 视图运行一些挂件。
10. 视图的渲染结果嵌在布局中。
11. 动作结束视图渲染并显示结果给用户。