PHP函数之array_chunk

有时候需要对数组进行按分页处理,之前的做法是计算出数组大小,按分页计算出偏移量,再从起始偏移量处开始遍历页大小个数据。现在不用这么麻烦了,原来PHP函数里有个现成的函数array_chunk可以配合我们实现对数组进行分页。

array_chunk

将一个数组分割成多个

说明

array array_chunk ( array $array , int $size [, bool $preserve_keys = false ] )

将一个数组分割成多个数组,其中每个数组的单元数目由 size 决定。最后一个数组的单元数目可能会少于 size 个。

示例代码


$page = isset($_GET['page'])?(int)$_GET['page']:1;
$pageSize = 3;

$arr = [1,2,3,4,5,6,7,8,9,10];

$totalPages = ceil(count($arr)/$pageSize);

$data = array_chunk($arr, $pageSize);
$msg = '';
$result = [];
if($page >= $totalPages) {
	$msg = '没有更多数据啦!';
} else {
	$result = $data[$page-1];
}

echo json_encode(['error'=>0, 'data'=>$result, 'msg'=>$msg]);
exit();

执行结果

总结

有时碰到对数组进行分页时,可以用该函数快速实现。

参考资料

posted @ 2017-12-26 21:19  才鱼  阅读(644)  评论(0编辑  收藏  举报