Home  >  Article  >  Backend Development  >  PHP 分页功能

PHP 分页功能

WBOY
WBOYOriginal
2016-06-20 12:25:40865browse



请问百度这个分页是怎么实现的?


回复讨论(解决方案)

这个问题问的有水平,我竟无言以对。。。

分页应该都差不多 百度也是传了一个参数 &pn=0 
根据pn的值来判断当前是第几页 然后拿个脚印可以拿图片处理?之类的

如果你说的是1 2 3 4 5的显示的话
分页步骤
1.计算总条数
2.获取当前页
3.计算总页数   ceil(总条数/每页数量)
4.计算偏移量 就是limit n,m
5.查询数据  显示数据

注意:第三部你已经算出来总页数了 假设是10页

$str = '';    for($i=1;$i<=10;$i++){        str .= '<a href="#">'.$i.'</a>';    }echo $str;

这样12345的效果就出来了 
然后再来点样式
a{    width:20px;    height:20px;    display:block;    background:#ffffff;    border:1px dashed #ccc;    color:blue;}a:hover{    background:blue;}

马马虎虎 差不多了

如果你说的是1 2 3 4 5的显示的话
分页步骤
1.计算总条数
2.获取当前页
3.计算总页数   ceil(总条数/每页数量)
4.计算偏移量 就是limit n,m
5.查询数据  显示数据

注意:第三部你已经算出来总页数了 假设是10页

$str = '';    for($i=1;$i<=10;$i++){        str .= '<a href="#">'.$i.'</a>';    }echo $str;

这样12345的效果就出来了 
然后再来点样式
a{    width:20px;    height:20px;    display:block;    background:#ffffff;    border:1px dashed #ccc;    color:blue;}a:hover{    background:blue;}

马马虎虎 差不多了




百度分页页数范围是怎么算的
当前也在 7 之前 显示  1~10
    当前页7                    2~11
  ...
    当前页10                 5~14
 这个是怎么计算出来的?

很简单啊,我最近做了一个精通分页的ppt,可以分享下


如果你说的是1 2 3 4 5的显示的话
分页步骤
1.计算总条数
2.获取当前页
3.计算总页数   ceil(总条数/每页数量)
4.计算偏移量 就是limit n,m
5.查询数据  显示数据

注意:第三部你已经算出来总页数了 假设是10页

$str = '';    for($i=1;$i<=10;$i++){        str .= '<a href="#">'.$i.'</a>';    }echo $str;

这样12345的效果就出来了 
然后再来点样式
a{    width:20px;    height:20px;    display:block;    background:#ffffff;    border:1px dashed #ccc;    color:blue;}a:hover{    background:blue;}

马马虎虎 差不多了




百度分页页数范围是怎么算的
当前也在 7 之前 显示  1~10
    当前页7                    2~11
  ...
    当前页10                 5~14
 这个是怎么计算出来的?



假设当前页数是$page
$first_page = max($page - 5, 1);
$end_page = $first_page + 9;
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn