{volist} 循环标签
{volist} 循环标签是Tag 标签,不是编译型的标签,所以volist 标签是可以被继承的,可以参阅 自定义Tag 标签。
使用格式:
{volist from=$list item=rs}{/volist}
{volist from=$list item=rs key=idx}{/volist}
{volist from=$list item=rs key=idx attr=attr}{/volist}
{volist from=$list item=rs key=idx attr=attr offset=5 length=10 mod=2 empty='<div>没有数据</div>'}{/volist}
参数名 | 类型 | 必需 | 说明 |
---|---|---|---|
from | any | Yes | 要遍历的数据 一般是数组 或者 对象 |
item | string | Yes | 遍历每项值的变量名称 |
key | string | No | 遍历每项键名的变量名称 |
attr | string | No | 用于读出每行属性的变量名称 |
offset | int | No | 循环起始偏移量 |
length | int | No | 最大显示行数 |
mod | int | No | 满足求余=0 的行 显示 |
empty | string | No | 如果没有输出任何数据,则显示该代码 |
Attr 属性介绍
$attr.index int 数组游标 从0开始。
$attr.iteration int 行号 从 1 开始。
$attr.first bool 是否第一行
$attr.last bool 是否最后一行
$attr.total int 数组长度。
$attr.show_total int 显示的数据行数
{assign var=data value=[
['id'=>1,'name'=>'wj001'],
['id'=>2,'name'=>'wj002'],
['id'=>3,'name'=>'wj003'],
['id'=>4,'name'=>'wj004'],
['id'=>5,'name'=>'wj005'],
['id'=>6,'name'=>'wj006'],
['id'=>7,'name'=>'wj007'],
['id'=>8,'name'=>'wj008'],
['id'=>9,'name'=>'wj009'],
['id'=>10,'name'=>'wj010']
]}
<ul>
{volist from=$data item=rs key=i attr=p}
<li>共{$p.show_total}/{$p.total}条,游标{$p.index},第{$p.iteration}条,{if $p.first}首行{/if}{if $p.last}尾行{/if}-----id:{$rs.id},name:{$rs.name}</li>
{/volist}
</ul>
<ul>
{volist from=$data item=rs key=i attr=p mod=2 offset=3}
<li>共{$p.show_total}/{$p.total}条,游标{$p.index},第{$p.iteration}条,{if $p.first}首行{/if}{if $p.last}尾行{/if}-----id:{$rs.id},name:{$rs.name}</li>
{/volist}
</ul>
<ul>
{volist from=$data item=rs key=i attr=p mod=2 length=2}
<li>共{$p.show_total}/{$p.total}条,游标{$p.index},第{$p.iteration}条,{if $p.first}首行{/if}{if $p.last}尾行{/if}-----id:{$rs.id},name:{$rs.name}</li>
{/volist}
</ul>
输出:
<ul>
<li>共10/10条,游标0,第1条,首行-----id:1,name:wj001</li>
<li>共10/10条,游标1,第2条,-----id:2,name:wj002</li>
<li>共10/10条,游标2,第3条,-----id:3,name:wj003</li>
<li>共10/10条,游标3,第4条,-----id:4,name:wj004</li>
<li>共10/10条,游标4,第5条,-----id:5,name:wj005</li>
<li>共10/10条,游标5,第6条,-----id:6,name:wj006</li>
<li>共10/10条,游标6,第7条,-----id:7,name:wj007</li>
<li>共10/10条,游标7,第8条,-----id:8,name:wj008</li>
<li>共10/10条,游标8,第9条,-----id:9,name:wj009</li>
<li>共10/10条,游标9,第10条,尾行-----id:10,name:wj010</li>
</ul>
<ul>
<li>共3/10条,游标4,第1条,首行-----id:5,name:wj005</li>
<li>共3/10条,游标6,第2条,-----id:7,name:wj007</li>
<li>共3/10条,游标8,第3条,尾行-----id:9,name:wj009</li>
</ul>
<ul>
<li>共2/10条,游标0,第1条,首行-----id:1,name:wj001</li>
<li>共2/10条,游标2,第2条,尾行-----id:3,name:wj003</li>
</ul>