foreach 跟volist 有什么区别?
2016-07-05 11:13
267 查看
<foreach name="list" item="vo"> {$vo.id} {$vo.name} </foreach> Foreach标签相对比volist标签简洁,没有volist标签那么多的功能。优势是可以对对象进行遍历输出,而volist标签通常是用于输出数组。 在模版定义如下,循环输出用户的编号和姓名: <volist name="list" id="vo"> {$vo.id} {$vo.name} </volist> Volist标签的name属性表示模板赋值的变量名称,因此不可随意在模板文件中改变。id表示当前的循环变量,可以随意指定,但确保不要和name属性冲突,例如: <volist name="list" id="data"> {$data.id} {$data.name} </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" 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还有一个别名iterate,用法和volist是一样。
相关文章推荐
- 用ant编译时出现“编码 UTF8 的不可映射字符“,这是因为编译的时候编码跟文件存储的编码方式不一样造成的
- java I/O流(1)编码
- Gitolite+Gerrit服务器搭建
- ASP.NET的缓存机制
- 欢迎使用CSDN-markdown编辑器
- 你不知道的Laravel Eloquent技能
- Oracle job procedure 存储过程定时任务
- 01_介绍
- UVa 699 The Falling Leaves
- 股市经典头部形态研究(三)
- WinSCP(版本5.7.6)中文文件名显示乱码
- 原生js控制div的显示与隐藏
- 动态链接库DLL的加载:隐式加载(载入时加载)和显式加载(运行时加载)
- redis 在windows 上安装
- swift 小知识
- 运行docker容器
- Linux下面exec函数
- 不说技术~2016-07-02我们是幸福的一家人
- 让玩家提升游戏耐玩度的8个小技巧
- iOS 提示更新 业务逻辑