Laravel框架——分页

Posted 偏执Code

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel框架——分页相关的知识,希望对你有一定的参考价值。

第一种:查询时实现分页(不能使用groupBy)

$users = App\User::paginate(15);
or
$users = User::where(‘votes‘, ‘>‘, 100)->paginate(15);
//如果你只需要在分页视图中简单的显示“下一个”和“上一个”链接,可以使用simplePaginate方法来执行该查询
User::simplePaginate(15);

 

第二种:手动创建分页器 

  有时候你可能想要通过传递数组数据来手动创建分页实例,你可以基于自己的需求通过创建Illuminate\Pagination\PaginatorIlluminate\Pagination\LengthAwarePaginator实例来实现。Paginator类不需要知道结果集中数据项的总数;然而,正因如此,该类也没有提供获取最后一页索引的方法。LengthAwarePaginator接收参数和Paginator几乎一样,只是,它要求传入结果集的总数。换句话说,Paginator 对应simplePaginate方法,而LengthAwarePaginator对应paginate方法。当手动创建分页器实例的时候,应该手动对传递到分页器的结果集进行“切片”。

 

在视图中显示分页结果

  @foreach ($users as $user)
        {{ $user->name }}
    @endforeach
  {!! $users->links() !!}

更多函数
  • $results->count()
  • $results->currentPage()
  • $results->firstItem()
  • $results->hasMorePages()
  • $results->lastItem()
  • $results->lastPage() (使用simplePaginate时无效)
  • $results->nextPageUrl()
  • $results->perPage()
  • $results->previousPageUrl()
  • $results->total() (使用simplePaginate时无效)
  • $results->url($page)
 





以上是关于Laravel框架——分页的主要内容,如果未能解决你的问题,请参考以下文章

laravel 框架给数组分页

Laravel 分页 数据丢失问题解决

[ Laravel 5.5 文档 ] 数据库操作 —— 在 Laravel 中轻松实现分页功能

laravel的数据分页及验证码功能

将非框架 PHP 项目移植到 Laravel 4.x

Laravel --实战篇 (自定义分页类)