本节课我们来学习一下模版标签中循环标签的使用,包括 foreach、volist 和 for。
一.foreach 循环
1. 控制前端先通过模型把相应的数据列表给筛选出来;
$list = User::select();return View::fetch('loop', ['list' => $list]);
2. 在模版端使用对称的标签{foreach}...{/foreach}实现循环;
3. 注意:这里对象调用时:用->符号或用.符号均可正确实现数据显示;
{foreach $list as $key=>$obj}{$key}/{$obj->id} //{$obj.id}也行{$obj->username} {$obj->gender} {$obj->email} {$obj->price} {$obj->create_time} {/foreach}
二.volist 循环
1. volist 也是将查询得到的数据集通过循环的方式进行输出;
{volist name="list" id="obj"}{$key}/{$obj->id} //{$obj.id}也行{$obj->username} {$obj->gender} {$obj->email} {$obj->price} {$obj->create_time} {/volist}
2. volist 中的 name 属性表示数据总集,id 属性表示当前循环的数据单条集;
3. 使用 offset 属性和 length 属性从第 4 条开始显示 5 条,这里下标从 0 开始;
{volist name="list" id="obj" offset='3' length='5'}
可以使用 eq 标签(下节课比较标签的知识点),来实现奇数或偶数的筛选数据;
{volist name="list" id="obj" mod="2"}{eq name='mod' value='0'}...
通过编译文件可以理解,mod=2 表示索引除以 2 得到的余数是否等于 0 或 1;
6. 如果余数设置为 0,那么输出的即偶数,如果设置为 1,则输出的是奇数;
7. 当然,切换到其它数字,也会有更多的排列效果;
8. 使用 empty 属性,可以当没有任何数据的时候,实现输出指定的提示;
{volist name="list" id="obj" empty="没有数据"}
使用 key='k',让索引从 1 开始计算,不指定就用{$i},指定后失效;
{volist name='list' id='obj' key='k'}{$k}{/volist}
三.for 循环
1. for 循环,顾名思义,通过起始和终止值,结合步长实现的循环;
{for start='1' end='100' comparison='lt' step='2' name='i'}{$i}{/for}
来源地址:https://blog.csdn.net/qq_34820433/article/details/129949932