yii创建与设置默认控制器并载入模板

时间:2022-06-08 12:04:23
yii创建与设置默认控制器并载入模板

一、创建控制器

在protected下的controllers文件夹中创建自定义的控制器文件,比如:

IndexController.php (文件名首字母大写)

IndexController.php文件中添加如下代码:

class IndexController extends Controller {

    //创建方法,方法名称=action+方法名
public function actionIndex() { }
} 二、设置默认控制器 在protected下config/main.php配置文件中,添加 'defaultController' => 'Index' 三、截入视图 //默认载入布局
1.$this->render(); //默认不载入布局
2.$this->renderPartial(); 三、什么是布局 在views/layouts下面的文件是布局文件。
公共区域,用render自动加载文件。 修改步骤:
1.views/layouts下面的,新建好布局文件。
2.修改默认布局文件。 位置:components/Controller.php public $layout = '//layouts/column1'; 四、载入外部文件 css与js等一些文件放入assets里面,按照前后台分开。 Yii::app()->request->baseUrl; 例如: <?php echo Yii::app()->request->baseUrl; ?>/assets/index/css/index.css Yii::app()返回的是index.php里创建的CWebApplication实例。
在一次请求处理过程中,这是个唯一的实例。Yii::app()负责一些全局性的功能模块。 五、给视图分配数据 $data = array(
'title' => '标题';
); $this->render('index', $data); 六、视图中处理分配的数据 在yii中,数据以对象的形式存在。 <?php foreach($data as $v): ?>
<li><?php echo $v->title; ?></li>
<?php endforeach; ?> 七、扩展自定义函数 方法一: 在protected目录下创建一个functions.php文件,在index.php加载app前引入代码。 require_once './protected/functions.php'; 方法二: 在protected/components下建立一个工具静态类,如Tools class Tools {
public static function dump($arr) {
echo '<pre>';
print_r($arr);
echo '</pre>';
}
} 在控制器里面直接用Tools::dump()来使用。