如何实现ThinkPHP6框架下的自定义分页功能?

2026-04-28 16:550阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1125个文字,预计阅读时间需要5分钟。

如何实现ThinkPHP6框架下的自定义分页功能?

ThinkPHP6.0内置了paginate分页类,便于快速分页。但默认的分页样式可能与期望的不符,需自行扩展分页类。以下是一个扩展分页类的简单示例:

phpclass CustomPage extends \think\facade\Db{ public function paginate($query, $listRows=10, $config=[]) { $page=input('page', 1); $data=$query->paginate([ 'list_rows'=> $listRows, 'page'=> $page, ], false, $config); $data->appends([ 'page'=> $page, ]); return $data; }}

使用方式:php$customPage=new CustomPage();$paginate=$customPage->paginate($model->order('id', 'desc'));

ThinkPHP6.0给我们预定义了paginate分页类,帮助我们快速分页,但是ThinkPHP6提供的分页的样式并不是我们想要的,需要我们自己扩展分页类,看看具体如何实现吧!

首先我们去复制一份官方的写好的分页类,并在此基础上进行修改,具体的路径在vendor/topthink/think-orm/src/paginator/driver/Bootstrap.php,然后在app/common/Bootstrap.php粘贴。

阅读全文

本文共计1125个文字,预计阅读时间需要5分钟。

如何实现ThinkPHP6框架下的自定义分页功能?

ThinkPHP6.0内置了paginate分页类,便于快速分页。但默认的分页样式可能与期望的不符,需自行扩展分页类。以下是一个扩展分页类的简单示例:

phpclass CustomPage extends \think\facade\Db{ public function paginate($query, $listRows=10, $config=[]) { $page=input('page', 1); $data=$query->paginate([ 'list_rows'=> $listRows, 'page'=> $page, ], false, $config); $data->appends([ 'page'=> $page, ]); return $data; }}

使用方式:php$customPage=new CustomPage();$paginate=$customPage->paginate($model->order('id', 'desc'));

ThinkPHP6.0给我们预定义了paginate分页类,帮助我们快速分页,但是ThinkPHP6提供的分页的样式并不是我们想要的,需要我们自己扩展分页类,看看具体如何实现吧!

首先我们去复制一份官方的写好的分页类,并在此基础上进行修改,具体的路径在vendor/topthink/think-orm/src/paginator/driver/Bootstrap.php,然后在app/common/Bootstrap.php粘贴。

阅读全文