本文实例讲述了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()来使用。