21
2018
08

PHP简单实用的分页代码

/**

*

*分页类

* @param int $num  总页数

* @param int $cnt     每页显示多少行数据

* @param int $curr     当前是第多少页

*/

function fenye( $num,$cnt = 10,$curr = 1){
    // 第一步:计算一共有多少页,ceil函数是向上取整
    $pages = ceil( $num / $cnt );

    // 最左边的页码,就是当前页码减去2,如果里要显示7个页码,那就减去3,9个页码就减4,总之是页码的一半
    // 我这例子是显示5个页码
    $left = max($curr -2,1);

    // 拿左边的数来计算最右边的页码数,比如最左边是1,那么最右边就是5,2就是6,
    $right = min( $left + 4,$pages );

    // 再次计算左边页码,这样左右的页码就都准确了,
    $left = max( $right -4,1);

    $yema = array();

    for ($i= $left; $i < $right+1; $i++) { 
        $_GET['page'] = $i;
        $yema[$i] = http_build_query( $_GET );
    }
    return $yema;
}

另外附加上讲一下http_build_query这个函数,能把数组单元用&符号拼接起来,很好用

如这样一个例子:

$arr = array('page'=>'1','cat_id'=>'100');

echo http_build_query( $arr );

结果就是“page=1&cat_id=100”,所以用的时候只要在链接里加上"?"就可以拼凑出url,如<a href = "index.php?<?php echo这个函数的结果?>">

原文链接:https://www.qiquanji.com/post/7799.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

微信扫码关注

更新实时通知

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。