laravel 手动创建分页器LengthAwarePaginator

分页的方法;

// Illuminate\Pagination\Paginator

paginate()                $users = DB::table('users')->paginate(15);       

//Illuminate\Pagination\LengthAwarePaginator

simplePaginate()        $users = DB::table('users')->simplePaginate(15);

Paginator 类不需要知道结果集中数据项的总数;不过,正因如此,该类也没有提供获取最后一页索引的方法。LengthAwarePaginator 接收参数和 Paginator 几乎一样,唯一不同在于它要求传入结果集的总数。

注:目前,使用 groupBy 的分页操作不能被 Laravel 有效执行,如果你需要在分页结果中使用 groupBy,可以使用下面方法构建分页。

收到创建分页常用到offset,limit 或 skip , take

offset 设置从哪里开始,limit 设置想要查询多少条数据

Model::offset(0)->limit(10)->get();

skip,take (sikip 跳过几条,take 取多少条数据)

Model::skip(3)->take(3)->get();

        $perPage = 5;
        $page = $request->input("page",1)-1;
        $total = DB::table("person")
                    ->groupBy()
                    ->count();

        $items = DB::table("person")
                    ->groupBy()
                    ->skip($page*$perPage)
                    ->take($perPage)
                    ->get();

        $person = new LengthAwarePaginator($items, $total,$perPage);
        $person->withPath("pagTest");

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值