PHP函數之array_chunk

有時候須要對數組進行按分頁處理,以前的作法是計算出數組大小,按分頁計算出偏移量,再從起始偏移量處開始遍歷頁大小個數據。如今不用這麼麻煩了,原來PHP函數裏有個現成的函數array_chunk能夠配合咱們實現對數組進行分頁。php

array_chunk

將一個數組分割成多個json

說明

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();

執行結果

總結

有時碰到對數組進行分頁時,能夠用該函數快速實現。函數

參考資料

相關文章
相關標籤/搜索