手动创建分页器

有时候你可能想要通过传递数组数据来手动创建分页实例,

你可以基于自己的需求通过创建 Illuminate\Pagination\Paginator

或 Illuminate\Pagination\LengthAwarePaginator 实例来实现。

Paginator 类不需要知道结果集中数据项的总数;

不过,正因如此,该类也没有提供获取最后一页索引的方法。

LengthAwarePaginator 接收参数和 Paginator 几乎一样,只是,它要求传入结果集的总数。

换句话说,Paginator 对应 simplePaginate 方法,

而LengthAwarePaginator 对应 paginate 方法。

注:当手动创建分页器实例的时候,应该手动对传递到分页器的结果集进行“切片”,

如果你不确定怎么做,查看 PHP 函数 array_slice。

---上面来自 laravel 学院手册

use Illuminate\Pagination\LengthAwarePaginator;

use Illuminate\Pagination\Paginator;

use Illuminate\Http\Request;

# 仅做演示 #

function userList(Request $request) {

$users = [

['username'=>'zhangsan', 'age'=>26],

['username'=>'lisi', 'age'=>23],

['username'=>'wangwu', 'age'=>62],

['username'=>'zhaoliu', 'age'=>46],

['username'=>'wangmazi', 'age'=>25],

['username'=>'lanzi', 'age'=>24],

['username'=>'pangzi', 'age'=>21]

];

$perPage = 3;

if ($request->has('page')) {

$current_page = $request->input('page');

$current_page = $current_page <= 0 ? 1 :$current_page;

} else {

$current_page = 1;

}

$item = array_slice($users, ($current_page-1)*$perPage, $perPage); //注释1

$total = count($users);

$paginator =new LengthAwarePaginator($item, $total, $perPage, $currentPage, [

'path' => Paginator::resolveCurrentPath(), //注释2

'pageName' => 'page',

]);

$userlist = $paginator->toArray()['data'];

return view('userlist', compact('userlist', 'paginator'));

}

---来自百度

php laravel 分页,laravel 分页问题相关推荐

  1. Laravel Database——Paginate 分页服务源码分析

    paginate 分页 laravel 的分页用起来非常简单,只需要对 query 调用 paginate 函数,把返回的对象扔给前端 blade 文件,在 blade 文件调用函数 render 函 ...

  2. php laravel 伪静态文件,关于 Laravel 项目 伪静态分页处理

    下面由Laravel教程栏目给大家介绍Laravel 项目 伪静态分页处理 ,希望对需要的朋友有所帮助!手上有个 Laravel 的项目,要求做伪静态处理,项目中使用了 Laravel 自带的分页组件 ...

  3. DataList编辑、更新、取消、删除、分页(分页控件 AspNetPager.dll)

    DataList编辑.更新.取消.删除.分页,分页用的是AspNetPager.dll4.3控 件,功能挺强大的,自己可以到网上下个 1.aspx 程序代码 <%@ Page Language= ...

  4. laravel 分页php_laravel 分页 seo浅谈

    php中文网最新课程 每日17点准时技术干货分享 laravel 的分页是非常简单易用的,但是有一点不是非常理想, 默认的分页生成的链接是 users?page=1 这种形式对seo不是非常友好(理论 ...

  5. JavaWeb黑马旅游网-学习笔记06【旅游线路分页展示分页展示】

    Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...

  6. ldaptemplate 分页_分页机运行与维护

    分页机运行与维护 分页机 分页机运行与维护 1. 检查分页机是否有螺丝松动. 2. 开机前清除输送带上杂物,用手盘动输送带,确认无异常卡住 3. 调节扶料板高低(通过调整挡料板的高低来实现),使之尽量 ...

  7. php laravel paginate,laravel 8 修改默认的paginate分页样式 的方法可以很简单

    我们的分页样式成了这样,如果,为了一个分页,放弃bootstrap,是不聪明的,或者重写分页也是不太合适的. 还是老套路,先去百度,看看有没有现成的轮子... 结果搜到了这个, laravel8替换p ...

  8. lumen 分页_关于laravel 得手动分页问题

    laravel 手动分页,应用场景,需要在分页数据中传递特殊参数,laravel自带paginate方法不满足的情况下. 初始数据如下: $data = array( ['id'=>'1','u ...

  9. 高仿淘宝分页:jQuery分页插件kkpager-Array-专题视频课程

    高仿淘宝分页:jQuery分页插件kkpager-503人已学习 课程介绍         天底下万能的分页 课程收益     让所有人不再为分页所苦恼 讲师介绍     Array 更多讲师课程   ...

  10. bootstrap-table模板(template)-返回表格-分页模板-分页插件

    目录 css和js的引入 bootstrap-table模板(template)-返回表格 后端 controller 分页 Service 分页插件 pom.xml中的配置 分页中sqlConfig ...

最新文章

  1. 关于MySQL AUTO_INCREMENT的小情况
  2. 印度孟买机器人餐厅_宝莱坞机器人2.0:重生归来一起来看印度神片!
  3. [html] 如何在不同的端口间共享cookie?
  4. 有关Cassandra节点之间的通信:Gossip【译】
  5. Django RESTful规范
  6. Windows 10 归档、对于一些问题的解决与软件推荐
  7. linux系统cpu文件,Linux_学堂:当前Linux系统运行的各种参数, 1、CPU   在文件“/proc/ - phpStudy...
  8. 【C语言】中的stdbool.h头文件
  9. clover更新驱动 后不能开机_MAC 10.14 安装教程-CLOVER的简单操作说明
  10. IReader Silverlight电子阅读器介绍开源项目
  11. Python | 封包
  12. CPU测温软件怎么读出来的内核温度?有什么简单靠谱的读取
  13. 许巍的故乡到底想表达什么?是写给谁的?
  14. php模板如何使用,PHP自定义模板标签详细解答,让你轻松驾驭
  15. 06-02 标签管理
  16. 本科学历马斯克当选美国工程院院士!张宏江、萨蒂亚:“我们都有美好的未来”...
  17. I/O 的五分钟法则(Five-Minute Rule)
  18. 新一代人工智能发展规划发布
  19. composer私有仓库搭建
  20. Gearman使用简介

热门文章

  1. html5蓝牙模块,HC-05蓝牙模块介绍
  2. php挑战答题,挑战答题小程序5.3.1开源
  3. Hive SQL练习题
  4. 马哥python_马哥Python 开发9期
  5. window 和虚拟机通过tftp实现文件传输
  6. 四川理工学院计算机学院在哪里,四川理工计算机学院
  7. c语言智能插座多线程原理,主芯片HLW8012 - 基于WiFi智能插座的智能家居电路及原理解析—电路精选(49)...
  8. linux异步io缺陷,具有libaio性能问题的Linux异步IO
  9. JS获取本机IP地址的方法
  10. Oracle数据库的优化--索引