Laravel分页文档地址:https://learnku.com/docs/laravel/5.3/pagination/1188
由于视图中的自定义分页render()不支持数组,有时候你希望数组做分页,可以用到手动创建分页方法实现。
具体代码如下:
第一步:引入类
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Pagination\Paginator;
第二步:写方法
//数组做分页函数
public function arrayMakePaginator(Request $request,$data){
$perPage = 10; //每页显示数量
if ($request->has('page')) {
$current_page = $request->input('page');
$current_page = $current_page <= 0 ? 1 :$current_page;
} else {
$current_page = 1;
}
$item = array_slice($data, ($current_page-1)*$perPage, $perPage);//$data为要分页的数组
$totals = count($data);
$paginator =new LengthAwarePaginator($item, $totals, $perPage, $current_page, [
'path' => Paginator::resolveCurrentPath(),
'pageName' => 'page',
]);
return $paginator;
}