首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2.[Yii]创建与设置默认控制器及载入模板

2.[Yii]创建与设置默认控制器及载入模板

作者头像
joshua317
发布2018-04-16 10:31:41
8680
发布2018-04-16 10:31:41
举报
文章被收录于专栏:技术博文技术博文

1.创建控制器与访问

class IndexController extends Controller
{
    //访问 index.php?r=index/index
    //r=后面 其中第一个是控制器,第二个是方法,r就是路由route的缩写
    public function actionIndex()
    {
        $this->render("index");//载入模板文件
    }
}

2.配置默认控制器

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

config/main.php 是主配置文件,在其中加入:

"defaultController" =>"index"

3.载入视图文件

在控制器中

$this->render();//载入布局文件

$this->renderPartial();//不载入布局文件(也不能载入框架自带的jquery)

建立文件夹需要根据控制器名字来建立,里面的文件名也就是render或者renderPartial方法传递的名字

例如:

控制器是Index,你就需要建立一个index文件夹

$this->render("index");或者$this->renderPartial("index");需要在index文件夹里面建立index.php模板文件

(1)什么是布局

在views/layouts下面的文件是布局文件,公共区域,用render自动加载的文件

修改步骤:

(1)views/layouts下面,新建好布局文件。

(2)修改默认布局文件:

位置:components/Controller.php

public $layout = "//layouts/column1"

(2)布局内容

上边是公用头部

中间<?php echo $content;?>

尾部是公共尾部

4.如何引入外部样式

css与js等一些文件放入assets里面,按照前后台分开

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

例如:

echo Yii::app()->request->baseUrl."/assets/index/css/index.css";

Yii::app()返回的是你在index.php里创建的CWebApplication实例。在一次请求处理过程中,这是一个唯一的实例。Yii::app()主要负责一些全局性的功能模块

5.分配给视图数据

分配数据给视图时,要以数组的形式分配

$name = "joshua";
        $age = "23";
        $data = array(
            "name" =>$name,
            "age" => $age,
            "info" =>array("height"=>"178","province"=>"henan")
        );
            
        $this->renderPartial("index",$data);
echo $name."--".$age;
print_r($data);

6.处理视图中的分配数据

在Yii框架中,数据以对象的形式存在

也就是说,从数据库中取出的数据都是以对象的形式存在

所以循环数据时是这样的

<?php foreach($data as $v);?>
<li><?php echo $v->title;?><li>
<?php endforeach;?>

7.扩展自定义函数

在protected目录下见自己的扩展函数

例如:自定义一个打印数组的函数 functions.php

//格式化打印数组
function P($arr)
{
    //首先判断是否数组
    if(is_array($arr))
    {
        echo "<pre>";
        print_r($arr);
        echo "</pre>";
    }else
    {
        echo "参数不是数组!";
    }    
}

并在入口处引入该文件

include dirname(__FILE__).'/protected/functions.php';
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014-08-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档