thinkphp中的offset是不是必须和length同时使用

thinkphp中的offset是不是必须和length同时使用


Qyouu
浏览 729回答 2
2回答

素胚勾勒不出你

加了offset不加length的话系统会自动取数组中元素的个数来补全,但是不加offset却加了length则会报错。下面大概说一下这里thinkphp是如何实现的:thinkphp这里是用的数组截取,也就是array_slice函数,12array&nbsp;array_slice&nbsp;(&nbsp;array&nbsp;$array&nbsp;,&nbsp;int&nbsp;$offset&nbsp;[,&nbsp;int&nbsp;$length&nbsp;[,&nbsp;bool&nbsp;$preserve_keys&nbsp;]]&nbsp;)array_slice() 默认将重置数组的键。自 PHP 5.0.2起,可以通过将 preserve_keys 设为TRUE 来改变此行为。这里因为要保存原来的键值,所以需要第四个参数TRUE的。模板和实现对应:1、正常1<volist&nbsp;name="lists"&nbsp;id="list"&nbsp;offset="0"&nbsp;length='15'>1$__LIST__&nbsp;=&nbsp;array_slice($lists,0,15,true);2、正常1<volist&nbsp;name="lists"&nbsp;id="list"&nbsp;offset="0">1$__LIST__&nbsp;=&nbsp;array_slice($lists,0,count($__LIST__),true);3、报错1<volist&nbsp;name="lists"&nbsp;id="list"&nbsp;length="15">1$__LIST__&nbsp;=&nbsp;array_slice($lists,,15,true);

潇潇雨雨

不是必须的。如果offset为5,length为10,则输出5-15条数据。若offset为5,length不写,则输出从第五条以后的所有数据。
打开App,查看更多内容
随时随地看视频慕课网APP