thinkphp中的offset是不是必须和length同时使用
2 回答
素胚勾勒不出你
TA贡献1827条经验 获得超9个赞
加了offset不加length的话系统会自动取数组中元素的个数来补全,但是不加offset却加了length则会报错。
下面大概说一下这里thinkphp是如何实现的:
thinkphp这里是用的数组截取,也就是array_slice函数,
12 | array array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] ) |
array_slice() 默认将重置数组的键。自 PHP 5.0.2
起,可以通过将 preserve_keys 设为
TRUE 来改变此行为。
这里因为要保存原来的键值,所以需要第四个参数TRUE的。
模板和实现对应:
1、正常
1 | < volist name = "lists" id = "list" offset = "0" length = '15' > |
1 | $__LIST__ = array_slice ( $lists ,0,15,true); |
2、正常
1 | < volist name = "lists" id = "list" offset = "0" > |
1 | $__LIST__ = array_slice ( $lists ,0, count ( $__LIST__ ),true); |
3、报错
1 | < volist name = "lists" id = "list" length = "15" > |
1 | $__LIST__ = array_slice ( $lists ,,15,true); |
- 2 回答
- 0 关注
- 766 浏览
添加回答
举报
0/150
提交
取消