0x00 前言

因为业务需求,符合筛选的问题,我们没办法直接用 Laravel 原生的 paginate 函数。通过研究他们封装好的 paginate 函数,我们简单的实现了手动分页设置。

以下代码适用于 Laravel 5.X

0x01 解决方法

1
2
3
4
5
6
7
8
9
10
$perPage = 15;
$paginate = new LengthAwarePaginator($users,$users->count(),$perPage);
$paginate->setPath(Paginator::resolveCurrentPath());
$inputs = Input::all();
if (count($inputs) > 0)
foreach ($inputs as $key => $value){
$paginate->addQuery($key, $value);
}
$page = empty(Input::get('page'))? 1 : Input::get('page');
$users = $users->forPage($page,$perPage);