前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP 学习笔记之一:thinkPHP的volist标签

PHP 学习笔记之一:thinkPHP的volist标签

作者头像
ShenduCC
发布2018-04-27 12:01:24
2K0
发布2018-04-27 12:01:24
举报
文章被收录于专栏:算法修养算法修养

Volist标签主要用于在模板中循环输出数据集或者多维数组。

属性:

name : 必须,输出数据模板变量,后台提供的变量id : 必须,是循环变量,可以随便定义,但是不能跟name相同。

举个栗子:

代码语言:javascript
复制
<volist name="user" id="vo">
    {$vo.name}
</volist>

后台传入user变量
$this->assign('user',$user);

这样就循环输出user的name

offset : 可选,从模板变量的第几个开始循环。 lengthb : 可选,输出数据的长度。

举个栗子:

代码语言:javascript
复制
<volist name="user" id="vo" offset="5" length="10">
    {$vo.name}
</volist>
输出第5条到第15条记录

key : 可选,循环的索引。

举个栗子:

代码语言:javascript
复制
<volist name="user" id="vo" key="k">
    {$k}.{$vo.name}
</volist>
输出:
    1.名字1
    2.名字2
    3.名字3
    ...
<volist name="user" id="vo">
    {$i}.{$vo.name}
    {$key}.{$vo.name}
</volist>
如果没有定义key,默认使用i,或者是key,效果也是一样的

empty : 可选,数据为空的时候输出的内容

代码语言:javascript
复制
<volist name="list" id="vo" empty="暂时没有数据" >
     {$vo.name}
</volist>

拓展一下: 从2.1版开始允许在模板中直接使用函数设定数据集,而不需要在控制器中给模板变量赋值传入数据集变量,如:

代码语言:javascript
复制
<volist name=":fun('arg')" id="vo">{$vo.name}</volist>

还有在volist循环里面,如果嵌入php代码,怎么输出变量?直接看栗子吧:

代码语言:javascript
复制
<select>
 <volist name="goods" id="vo">
      <option value="{$vo.goods_name}" <?php echo ($goods_name == $vo['goods_name'])?"selected":"" ?> >{$key}.{$vo.goods_name}</option>
 </volist>
</select>

在下拉列表里面,根据后台提供的数据,动态的添加option选项。在里面,用php代码,实现select动态显示option的值,而在php代码块中,使用volist的变量,则要使用$vo[‘goods_name’]

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档