服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - 学习php分页代码实例

学习php分页代码实例

2020-05-23 14:52PHP教程网 PHP教程

学习PHP,一定会遇到操作MYSQL数据库,而且会对数据库里的数据做分页显示出来的问题,下面写一个小例子学习一下PHP分页的方法。

PHP分页有很多方法,今天我们就用一个小例子演示一下这个功能。

复制代码 代码如下:


$result = "<div class=\"page-num\"><ul class=\"fn-clear\">";

    // 上一页
    if ($offset>0) {
        $result .= "<li>
            <a href=\"".$url.'offset='.($offset-$maxrow)."\">Prev</a>
        </li>";
    }

    $pages = $allPageNums;  //总页数
    $page = $curPage;    //当前页数
    $page_len = 9;
    $page_len = ($page_len%2)?$page_len:$pagelen+1;//页码个数
    $pageoffset = ($page_len-1)/2;//页码个数左右偏移量
    if($pages>$page_len){
        //如果当前页小于等于左偏移
        if($page<=$pageoffset){
            $init=1;
            $max_p = $page_len;
        }else{//如果当前页大于左偏移
            //如果当前页码右偏移超出最大分页数
            if($page+$pageoffset>=$pages+1){
                $init = $pages-$page_len+1;
         $max_p = $pages;
            }else{
                //左右偏移都存在时的计算
                $init = $page-$pageoffset;
                $max_p = $page+$pageoffset;
            }
        }
    } else {
  
      $init = 1;
      $max_p = $pages;
  }

 

    for($i=$init; $i<=$max_p; $i++) {

        if ( $i == $curPage ) {
            $result .=    "<li class=\"on\"><a href=\"".$url.'offset='.($i*$maxrow)."\" >$i</a></li>";
            continue;
        }

        $result .=    "<li><a href=\"".$url.'offset='.(($i-1)*$maxrow)."\">$i</a></li>";

    }

    // 打印下一页
    if ( $allnums > ($offset+$maxrow) ) {
        $result .=    "<li>
            <a href=\"".$url.'offset='.($offset+$maxrow)."\">Next</a>
        </li>";
    }

 

延伸 · 阅读

精彩推荐