yii框架在layout模式下,模版和layout文件的渲染顺序
2014-12-05 10:48
295 查看
yii框架默认会渲染/protected/views/laytout/main.php布局文件,当然我们也可以自己设置控制器特有的布局文件,设置很简单:
设置控制器类的 $layout属性为你想要渲染的布局文件就ok了
那么有了layout布局后,$this->render('index',array('dataProvider'=>$dataProvider,));,yii是先渲染column2布局文件还是先渲染index.php视图模版呢,答案很简单,我们看下
CController.php文件中的render函数就明白了:
可以看到yii是先通过renderPartial来渲染视图模版,然后把模版渲染的结果放入content变量中通过renderFile去渲染布局文件
<?php class PostController extends Controller { public $layout='column2';
设置控制器类的 $layout属性为你想要渲染的布局文件就ok了
那么有了layout布局后,$this->render('index',array('dataProvider'=>$dataProvider,));,yii是先渲染column2布局文件还是先渲染index.php视图模版呢,答案很简单,我们看下
CController.php文件中的render函数就明白了:
public function render($view,$data=null,$return=false) { if($this->beforeRender($view)) { $output=$this->renderPartial($view,$data,true); if(($layoutFile=$this->getLayoutFile($this->layout))!==false) $output=$this->renderFile($layoutFile,array('content'=>$output),true); $this->afterRender($view,$output); $output=$this->processOutput($output); if($return) return $output; else echo $output; } }
可以看到yii是先通过renderPartial来渲染视图模版,然后把模版渲染的结果放入content变量中通过renderFile去渲染布局文件
相关文章推荐
- yii框架在layout模式下,模版和layout文件的渲染顺序
- Yii框架源码分析之文件结构、程序结构及配置
- Yii框架layout【布局】的应用
- 在Yii框架中使用PHPExcel扩展从数据库导出excel文件功能的实现
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式']
- yii 学习笔记二 、路由 及 yii框架模版使用
- C++根据头文件自动生成实现文件框架(支持模版)
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式']
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式'](转)
- YII框架局部渲染写法
- Yii框架配置文件main.php分析
- PHP Yii 框架的数据库操作笔记一、查询,更新,删除的方法(AR模式)!
- ci框架在pathinfo模式禁用的时候怎么办,BAE的配置文件app.conf
- Yii框架源码分析之文件结构、程序结构及配置
- Yii 框架学习笔记(配置文件)
- 渲染方法yii框架页面渲染
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式']
- yii配置文件的详细解释之如何配置yii框架
- 文件模式Vim配置文件种类,加载顺序,基本配置
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式']