PHP开发实例大全(提高卷) 中文完整pdf扫描版[244MB]
一、controller与layout/main.php执行的先后关系
先controller,再layout(main和column1),所以main.php文件中的$this是指controller。所以$this->title是在controller里设定的。
由前面可知,该controller是继承Controller.php的,而Controller.php又是继承CController.php的。
二、module
增加模块需要增加APPModule.php继承CWebModule.php,里面继承或覆盖CWebModule里的属性和方法。
比如,常见有init(),beforeControllerAction(),getLayoutPath()方法。其中init里主要是引入'app.models.*和app.components.*'
三、如何使用module
1,在config/main.php
'modules' => array(
'admin',
'cron',
),
2,在modules下创建statistics文件夹
再创建modules/statistics/StatisticsModule.php进行初始化(引入模块内的models和components,beforeControllerAction,布局等)。
3,在modules/statistics/components下创建StatisticsBaseController.php。
该文件继承自Controller.php(该文件又继承自CController.php)
4,写自己的MVC。
创建modules/statistics/下的controllers,views,models文件夹。
先controller,再layout(main和column1),所以main.php文件中的$this是指controller。所以$this->title是在controller里设定的。
由前面可知,该controller是继承Controller.php的,而Controller.php又是继承CController.php的。
二、module
增加模块需要增加APPModule.php继承CWebModule.php,里面继承或覆盖CWebModule里的属性和方法。
比如,常见有init(),beforeControllerAction(),getLayoutPath()方法。其中init里主要是引入'app.models.*和app.components.*'
三、如何使用module
1,在config/main.php
'modules' => array(
'admin',
'cron',
),
2,在modules下创建statistics文件夹
再创建modules/statistics/StatisticsModule.php进行初始化(引入模块内的models和components,beforeControllerAction,布局等)。
3,在modules/statistics/components下创建StatisticsBaseController.php。
该文件继承自Controller.php(该文件又继承自CController.php)
4,写自己的MVC。
创建modules/statistics/下的controllers,views,models文件夹。
转载请注明:谷谷点程序 » Yii中引入module的方法