【扩展】接上个问题已经研究出来了,拿出来给大家分享一下,分页
先上效果图
前几页的效果图
中间
最后几页
其实很简单,在showPage方法里把下面这一段换一下
但注意,这个是用于总页码数比较大的情况。
我还没写判断,可以做个判断,定义$totalPage大于某个值时再用
for($i = 1; $i <= $totalPage; $i ++) { if ($page == $i) { $p .= "[{$i}]"; } else { $p .= "<a href='{$url}?page={$i}'>[{$i}]</a>"; } }
改成
$size=5; //这个值可以自由定义 if ($page>=1&&$page<$size){ for ($i=1;$i<$size;$i++){ $p.="<a href='{$url}?page={$i}'>[$i]</a>"; } $p.="..."."<a href='{$url}?page={$totalPage}'>[$totalPage]</a>"; }elseif ($page>$totalPage-$size+1&&$page<=$totalPage){ for ($i=$totalPage-$size+1;$i<=$totalPage;$i++){ $p.="<a href='{$url}?page={$i}'>[$i]</a>"; } $p="<a href='{$url}?page=1'>[1]</a>"."...".$p; }else { for ($i=$page-2;$i<=$page+2;$i++){ $p.="<a href='{$url}?page={$i}'>[$i]</a>"; } $p="<a href='{$url}?page=1'>[1]</a>"."...".$p."..."."<a href='{$url}?page={$totalPage}'>[$totalPage]</a>"; }