Laravel 8 手动创建分页
有时你可能希望手动创建分页,并传递一个数组集给它。可以通过创建 Illuminate\Pagination\Paginator
或 Illuminate\Pagination\LengthAwarePaginator
实例来实现,这取决于你的需要。
Paginator
类不需要知道结果集的总数;然而,这样一来,这个类就没办法获知最后一页的索引。LengthAwarePaginator
接受和 Paginator
几乎相同的参数;不过,它会计算结果集的总数。
换句话说,Paginator
相当于查询构造器或 Eloquent 的 simplePaginate
方法,而 LengthAwarePaginator
相当于 paginate
方法。
注意:在手动创建分页实例时,需要人为「slice」传递给分页实例的结果数组。如果你对此没有把握,请参考 PHP 的 array_slice 方法。