Yii框架创建与设置默认控制器与载入模板

一、创建控制器与访问

在  项目目录/protected/controllers 目录下创建 IndexController.php 文件

写入代码内容:

1 <?php
2 class IndexController extends Controller
3 {
4     public function actionIndex()
5     {
6         echo "HELLO";
7     }
8 }

由此创建了一个Index控制器,里面有一个Index方法

访问: index.php?r=Index/Index 

r=后面,第一个是控制器,第二个是方法,r就是路由route的缩写

 

二、配置默认控制器

Yii默认访问:SiteController控制器下面的actionIndex方法

修改默认访问控制器:

在 项目目录/protected/config/main.php 主配置文件中加入:  

1 //设置默认访问控制器
2 'defaultController' => 'Index',

 

三、载入视图文件

在控制器中:

 1 <?php
 2 class IndexController extends Controller
 3 {
 4     public function actionIndex()
 5     {    
 6         //载入布局
 7         //$this -> render('index');
 8                
 9         //不载入布局(也不能载入框架自带的jquery文件)
10         $this -> renderPartial('index');
11     }
12 }            

查看默认加载的布局:

 项目目录/protected/components/Controller.php 文件

1 public $layout='//layouts/column1';

修改布局文件的时候也是在这里修改

 

四、如何引入外部样式

外部样式文件一般放在 项目目录/assets 文件夹里面,并区分前后台文件

需要引入的时候在模板文件里写入

1 Yii::app()->request->baseUrl

例如:

1 <link href="<?php echo Yii::app()->request->baseUrl; ?>/assets/index/CSS/index.css" rel="stylesheet" type="text/css" />

 

五、分配给视图数据

在控制器里写入:

 1 <?php
 2 class IndexController extends Controller
 3 {
 4     public function actionIndex()
 5     {    
 6         $data = array(
 7             'name' => '宋子庆',
 8             'sex'  => '男',
 9             'age'  => 24
10         );
11         
12         $this -> renderPartial('index',$data);
13     }
14 }

在对应的模板中写入:

1 <?php echo $name; ?><br/>
2 <?php echo $sex; ?><br/>
3 <?php echo $age; ?><br/>

 

六、扩展自定义函数

1、在protected目录下建立functions.php文件

1 <?php
2     function test($arr)
3     {
4         echo '<pre>';
5         print_r($arr);
6         echo '</pre>';
7     }
8 ?>

 2、在单入口(index.php)引入自定义函数文件

1 //引入自定义函数文件
2 require_once('./protected/functions.php');

 3、在控制器里使用

 1 <?php
 2 class IndexController extends Controller
 3 {
 4     public function actionIndex()
 5     {    
 6         $data = array(
 7             'name' => '宋子庆',
 8             'sex'  => '男',
 9             'age'  => 24
10         );
11         test($data);
12     }
13 }

 

你可能感兴趣的:(Yii框架创建与设置默认控制器与载入模板)