当前位置: 首页 > 编程笔记 >

Thinkphp中的volist标签用法简介

柴衡
2023-03-14
本文向大家介绍Thinkphp中的volist标签用法简介,包括了Thinkphp中的volist标签用法简介的使用技巧和注意事项,需要的朋友参考一下

通常volist标签多用于查询数据集(select方法)的结果输出,通常模型的select方法返回的结果是一个二维数组,对此可以直接使用volist标签进行输出。

在控制器中首先对模版赋值,如下例所示:

$User = M('User');
$list = $User->limit(10)->select();
$this->assign('list',$list);

在模版定义如下,循环输出用户的编号和姓名:

<volist name="list" id="vo">
{$vo.id}:{$vo.name}<br/>
</volist>

Volist标签的name属性表示模板赋值的变量名称,因此不可随意在模板文件中改变。id表示当前的循环变量,可以随意指定,但需要确保不要和name属性冲突,例如:

<volist name="list" id="data">
{$data.id}:{$data.name}<br/>
</volist>

支持输出查询结果中的部分数据,例如输出其中的第5~15条记录:

<volist name="list" id="vo" offset="5" length='10'>
{$vo.name}
</volist>

输出偶数记录:

<volist name="list" id="vo" mod="2" >
<eq name="mod" value="1">
{$vo.name}
</eq>
</volist>

Mod属性还用于控制一定记录的换行,例如:

<volist name="list" id="vo" mod="5" >
{$vo.name}
<eq name="mod" value="4"><br/></eq>
</volist>

为空的时候输出提示:

<volist name="list" id="vo" empty="暂时没有数据" >
{$vo.id}|{$vo.name}
</volist>

empty属性不支持直接传入html语法,但可以支持变量输出,例如:

$this->assign('empty','<span>没有数据</span>');
$this->assign('list',$list);

然后在模板中使用:

<volist name="list" id="vo" empty="$empty" >
{$vo.id}|{$vo.name}
</volist>

输出循环变量:

<volist name="list" id="vo" key="k" >
{$k}.{$vo.name}
</volist>

如果没有指定key属性的话,默认使用循环变量i,例如:

<volist name="list" id="vo" >
{$i}.{$vo.name}
</volist>

如果要输出数组的索引,可以直接使用key变量,和循环变量不同的是,这个key是由数据本身决定,而不是循环控制的,例如:

<volist name="list" id="vo" >
{$key}.{$vo.name}
</volist>

模板中可以直接使用函数设定数据集,而不需要在控制器中给模板变量赋值传入数据集变量,如:

<volist name=":fun('arg')" id="vo">
{$vo.name}
</volist>

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

 类似资料:
  • 本文向大家介绍thinkPHP中volist标签用法示例,包括了thinkPHP中volist标签用法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了thinkPHP中volist标签用法。分享给大家供大家参考,具体如下: 属性: name(必须) 要输出的数据模板变量 id(必须) 循环变量 offset(可选) 要输出数据的offset length(可选) 输出数据的长度 key

  • 本文向大家介绍详解thinkphp中的volist标签,包括了详解thinkphp中的volist标签的使用技巧和注意事项,需要的朋友参考一下 属性: name(必须):要输出的数据模板变量 id(必须):循环变量 offset(可选):要输出数据的offset length(可选):输出数据的长度 key(可选):循环的key变量,默认值为i mod(可选):对key值取模,默认为2 empty

  • 在模板中循环需要使用volist标签 控制器代码: $user1['username'] = '张三'; $user2['username'] = '李四'; $user3['username'] = '王五'; $userList = array($user1,$user2,$user3); $this->assign('userlist', $userList);

  • 本文向大家介绍thinkphp 中的volist标签在ajax操作中的特殊性(推荐),包括了thinkphp 中的volist标签在ajax操作中的特殊性(推荐)的使用技巧和注意事项,需要的朋友参考一下 背景 在一个ThinkPHP的复杂页面(包含volist)中实现volist标签显示Jquery查询结果的返回 知识点 使用ajax的目的是不刷新整个页面的前提下实现部分表格数据的刷新,但是注意T

  • 本文向大家介绍Thinkphp中volist标签mod控制一定记录的换行BUG解决方法,包括了Thinkphp中volist标签mod控制一定记录的换行BUG解决方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Thinkphp中volist标签mod控制一定记录的换行BUG解决方法。分享给大家供大家参考。具体方法如下: 一、BUG描述: 存在于thinkphp 2.0 版本 Mod属性

  • 本文向大家介绍ThinkPHP中html:list标签用法分析,包括了ThinkPHP中html:list标签用法分析的使用技巧和注意事项,需要的朋友参考一下 本文实例分析了ThinkPHP中html:list标签用法。分享给大家供大家参考,具体如下: ThinkPHP的html标签库中的list标签功能强大,但没有文档.只好看源码了.马马虎虎看了下,大概如下: datasource和show必须