我正在尝试获取与页码对应的数组。每页包含12个结果。输出似乎不一致。它在第一页上起作用,但在其他页面上起作用。我想知道是否有人可以帮我确定原因以及如何解决这个问题?
echo count($results); // output: 227
echo $page; //output: 3
根据页码
获得12个结果//Page 1 = results 0-12
//Page 2 = results 12-24
//Page 3 = results 24-36 etc.
$results = array_slice($results, ($page-1)*12, $page*12); // array_slice($results, 24, 36)
提前致谢!
答案 0 :(得分:2)
这就是你想要的:
$results = array_slice($results, ($page-1)*12, 12);
根据array_slice()上的php手册,第二个参数是偏移量(你已经正确)。
第三个参数是切片的长度。
12是您想要的,因为您每页需要12个结果。
使用$page*12
作为第三个参数,第一页上有12个结果,第二个上有24个,第三个上有36个,依此类推。