YII视图操作

前提:views文件夹下创建控制器名(小写)对应的文件夹,然后将控制器中用到的模板文件创建在其中;模板文件的后缀是".php"。

1.显示模板文件:

   

 

2.显示模板文件并传递参数:

  yii的变量分配都是以数组形式的$data变量分配到模板中的。

  (1).分配字符串到模板:

      分配:

    

   显示:

    

(2):分配数组到模板:

    分配:

    

   显示:

    

(3).分配js到模板:

    分配:

   

    显示:

    

   由于如果直接将js传递到页面,js会被解析并被执行;这样页面就出现了安全性问题:
    我们可以在显示的时候做处理(1.引入对应的命名空间;2.函数对分配的变量作处理)

   方法一:将js做转义处理,转换成字符串,只显示,不执行:

   

方法二:直接将js做过滤处理:

   

 

3.布局文件:

   使用布局文件可以避免重写相同的html代码;通用的模板文件放在/views/layouts文件中,显示的使用rander方法(配合$layout属性):

   分配:

  

  显示:在父级模板中获取子级模板的东西

  

注:render():将render方法中指定的视图文件放到变量content中,并显示显示$layout变量指定的视图文件;在$layout指定的模板中调用$content,即可显示子级模板内容。

 

4.在一个模板文件中显示另外一个模板的内容:

 如:在index.php模板中显示anthor.php模板(index.php和anthor.php处于同一级);分为两个步骤:先显示index.php模板,然后在index.php模板中显示anthor.php模板:

 步骤一.显示index.php(renderPartial或者render或者方法都可以):

   

步骤二:在index.php模板中显示anthor.php模板:

   

如果此时还要在index.php中传递参数到anthor.php:

  index.php中传递:

  

  anthor.php中接受:

  

 

5.数据块:在子模板中定义一个数据块,覆盖掉父模板中的某些模块;

 方法是:在子模板中定义数据标签,然后在父模板中调用。

  子模板中定义数据块:

  

 父模板中调用:

 

如果调用的时候还要判断数据块是否有被定义:

 

转载于:https://my.oschina.net/u/1771585/blog/753663

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值