ThinkPHP模板循环输出Volist标签用法实例详解


Posted in PHP onMarch 23, 2016

本文实例讲述了ThinkPHP模板循环输出Volist标签用法。分享给大家供大家参考,具体如下:

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

volist 标签

在模块操作中,select() 方法返回的是一个二维数组,可以用 volist 直接输出:

<volist name="list" id="vo">
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
</volist>

如果想输出多维数组,请参看《ThinkPHP模板Volist标签嵌套循环输出多维数组的方法》

注意:name的属性值 list (name="list")不可随意改变,需要与操作中的模板赋值指令对应:

$this->assign( "list", $list );

id 表示循环变量,可以随意指定,但不得与 name 属性冲突。

输出部分数据

如果要输出结果集中的部分数据,需要指定 offset(数据指针) 与 length(数据数据条数) 属性。

输出第 5~14 条记录:

<volist name="list" id="vo" offset="5" length='10'>
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
<hr />
</volist>

输出奇/偶数记录

volist 中的 mod 参数相当于指定一个频率,系统会将当前的实际记录对 mod 参数值求余(PHP中的%运算符)运算。而配合判断标签(如eq标签),就可以按照频率控制输出的数据或数据显示的格式。

例子1,输出偶数记录:

<volist name="list" id="vo" mod="2">
<eq name="mod" value="0">
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
<hr />
</eq>
</volist>

例子2,输出所有记录,但让表格隔行显示不同的背景颜色的例子:

<table>
<volist name="list" id="vo" mod="2">
<tr<eq name="mod" value="0"> style="background-color:#FFF;"</eq>>
  <td>我是单元格内容</td>
  <td>我也是单元格内容</td>
</tr>
</volist>
</table>

提示:实际使用中可以灵活设定 mod 参数的值,而不仅仅限于奇偶。

输出循环变量

指定 key 属性用于输出循环的变量次数(注意不是数据表主键 id):

<volist name="list" id="vo" key="k">
序  号:{$k}<br />
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
<hr />
</volist>

输出数组索引

直接使用 $key 变量用于输出数组索引:

<volist name="list" id="vo">
数组key:{$key}<br />
用 户 名:{$vo['username']}<br />
电子邮件:{$vo['email']}<br />
注册时间:{$vo['regdate']|date="Y-m-d H:i",###}
<hr />
</volist>

提示

与输出循环变量不同的是,这个 key 值取决于数据本身,而不是 volist 循环输出决定的。

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

PHP 相关文章推荐
聊天室php&amp;mysql(五)
Oct 09 PHP
sphinx增量索引的一个问题
Jun 14 PHP
destoon找回管理员密码的方法
Jun 21 PHP
phpQuery让php处理html代码像jQuery一样方便
Jan 06 PHP
Yii学习总结之安装配置
Feb 22 PHP
Laravel5.1自定义500错误页面示例
Oct 09 PHP
PHP实现大数(浮点数)取余的方法
Feb 18 PHP
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
Jul 20 PHP
PHP简单实现模拟登陆功能示例
Sep 15 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
Oct 16 PHP
PDO::commit讲解
Jan 27 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
Mar 23 #PHP
ThinkPHP路由机制简介
Mar 23 #PHP
PHP getallheaders无法获取自定义头(headers)的问题
Mar 23 #PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
Mar 23 #PHP
SSO单点登录的PHP实现方法(Laravel框架)
Mar 23 #PHP
Zend Framework开发入门经典教程
Mar 23 #PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
Mar 23 #PHP
You might like
php使用websocket示例详解
2014/03/12 PHP
php实例分享之二维数组排序
2014/05/15 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
PHP获取数组的键与值方法小结
2015/06/13 PHP
php接口实现拖拽排序功能
2018/04/23 PHP
jQuery 数据缓存data(name, value)详解及实现
2010/01/04 Javascript
JavaScript使用setTimeout实现延迟弹出警告框的方法
2015/04/07 Javascript
jQuery实现彩带延伸效果的网页加载条loading动画
2015/10/29 Javascript
onclick和onblur冲突问题的快速解决方法
2016/04/28 Javascript
AngularJS基础 ng-click 指令示例代码
2016/08/01 Javascript
原生js实现ajax方法(超简单)
2016/09/20 Javascript
JavaScript数据结构之二叉树的查找算法示例
2017/04/13 Javascript
微信小程序图片横向左右滑动案例
2017/05/19 Javascript
妙用Angularjs实现表格按指定列排序
2017/06/23 Javascript
解决vue-cli项目webpack打包后iconfont文件路径的问题
2018/09/01 Javascript
VeeValidate 的使用场景以及配置详解
2019/01/11 Javascript
Vue.js计算机属性computed和methods方法详解
2019/10/12 Javascript
js实现单元格拖拽效果
2020/02/10 Javascript
vue使用openlayers实现移动点动画
2020/09/24 Javascript
vue 数据遍历筛选 过滤 排序的应用操作
2020/11/17 Javascript
Linux上安装Python的PIL和Pillow库处理图片的实例教程
2016/06/23 Python
python读取Kafka实例
2019/12/23 Python
Python爬取365好书中小说代码实例
2020/02/28 Python
Django用户身份验证完成示例代码
2020/04/03 Python
Python嵌入C/C++进行开发详解
2020/06/09 Python
印度最大的网上花店:Ferns N Petals(鲜花、礼品和蛋糕)
2017/10/16 全球购物
英国健康和美容技术产品购物网站:CurrentBody
2019/07/17 全球购物
面试后的英文感谢信
2014/02/01 职场文书
运动会稿件300字
2014/02/14 职场文书
新教师工作感言
2014/02/16 职场文书
高中生逃课检讨书
2014/10/10 职场文书
2014年招生工作总结
2014/11/26 职场文书
管理失职检讨书
2015/05/05 职场文书
CSS 圆形进度栏
2021/04/06 HTML / CSS
Linux中各个目录的作用与内容
2022/06/28 Servers
mysql sock 文件解析及作用讲解
2022/07/15 MySQL