以下方法是基于THINKPHP5框架开发,实现含有省略号的分页功能,如下图
此种分页和上一篇PHP实现分页功能(二)百度分页样式,固定分页个数有些类似;这种分页样式也是需要固定分页的个数,如上图,每次固定显示6个数量的分页(含省略号),点击当前页后,当前页 往后延固定个数及为尾数,如若不够固定分页的个数就往前延对应的个数即可。
控制器代码
/*
*分页功能
* 参数:p 当前页码数
* listpage 每页显示的数据条数
* totalpage 总页数
* fenye 分页个数
* num 当前分页延后个数
* */
public function index(){
$p=input('p',1,'intval');//当前页码数,默认显示第一页
$listpage=input('listpage',8,'intval');//每页显示的数据条数
$count=Db::name('shujubiao')->count();//数据总数
$totalpage=ceil($count/$listpage);//总页数
$fenye=input('listpage',6,'intval');//分页个数
$guding=input('listpage',5,'intval');//固定个数,带表分离开的1..x,省略号,当前页;最小为3,代表省略号在第二位
$num=input('listpage',1,'intval');//当前分页延后个数
$num=$fenye-$guding>=