设置分页

setPages('分页数据')

分页功能需要用到ThinkPHP自带的paginate()方法。

  1. // 读取用户数据
  2. $data_list = Db::name('admin_user')->paginate();
  3. // 分页数据
  4. $page = $data_list->render();
  5. // 使用ZBuilder构建数据表格
  6. return ZBuilder::make('table')
  7. ->addOrder('id,username') // 添加排序
  8. ->addFilter('id,username') // 添加筛选
  9. ->addColumn('id', 'ID')
  10. ->addColumn('username', '用户名')
  11. ->addColumn('nickname', '昵称')
  12. ->addColumn('email', '邮箱')
  13. ->addColumn('mobile', '手机号')
  14. ->addColumn('create_time', '创建时间')
  15. ->setRowList($data_list) // 设置表格数据
  16. ->setPages($page) // 设置分页数据
  17. ->fetch();

一般情况下,该方法无需调用,系统会自动判断是否可以分页。

  1. // 读取用户数据
  2. $data_list = Db::name('admin_user')->paginate();
  3. // 使用ZBuilder构建数据表格
  4. return ZBuilder::make('table')
  5. ->addOrder('id,username') // 添加排序
  6. ->addFilter('id,username') // 添加筛选
  7. ->addColumn('id', 'ID')
  8. ->addColumn('username', '用户名')
  9. ->addColumn('nickname', '昵称')
  10. ->addColumn('email', '邮箱')
  11. ->addColumn('mobile', '手机号')
  12. ->addColumn('create_time', '创建时间')
  13. ->setRowList($data_list) // 设置表格数据
  14. ->fetch();

以上两种是一样的,推荐使用第二种,可以减少操作。