ホームページ >バックエンド開発 >PHPチュートリアル >PHP ページングのサンプル コード (変更して直接使用できます)

PHP ページングのサンプル コード (変更して直接使用できます)

怪我咯
怪我咯オリジナル
2017-07-04 13:42:151442ブラウズ

PHP を学習すると、MYSQL データベース を操作する際に必ず問題が発生し、データベース内のデータが ページング 表示されることになります。PHP のページング方法を学ぶために、以下に小さな例を書いてみましょう。

PHP でページネーションを行う方法はたくさんあります。今日は、この機能を説明するために小さな例を使用します。

コードは次のとおりです:

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

    // 上一页
    if ($offset>0) {
        $result .= "<li>
            <a href=\"".$url.&#39;offset=&#39;.($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.&#39;offset=&#39;.($i*$maxrow)."\" >$i</a></li>";
            continue;
        }

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

    }

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


以上がPHP ページングのサンプル コード (変更して直接使用できます)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。