thinkPHP5模版页面volist循环offset使用
在TP5模版中,用来输出循环数据的volist标签,offset属性只能使用数字常量,不能使用变量。而length可以使用变量。
有这样一个应用场景:当volist循环需要排除前面几个数据的时候,我们通常使用offset来操作。而假设前面要排除的数据是根据当前页面占位符来确定的,而需要排除的数据量就是个变量了。
官方手册说明
支持输出查询结果中的部分数据,例如输出其中的第5~15条记录
{volist name="list" id="vo" offset="5" length='10'} {$vo.name} {/volist}
根据手册,上述场景只需要将offset的值设置成$number这样一个变量,按说就能实现必须的效果了。然后当你尝试将offset设置成变量时,输出的内容没有按照预想的发展,而是从第一条记录开始输出,直到length的长度为止。就像根本没有设置offset一样。
此时如果尝试手动将offset设置成固定数值时,就能实现排除效果。而这个说明在官方手册上并没有标注。
同样length也没有说明其使用规则。经过测试length可以使用变量来限定数据条数。