ホームページ  >  記事  >  バックエンド開発  >  PHP でカプセル化されたページ ページング クラス

PHP でカプセル化されたページ ページング クラス

墨辰丷
墨辰丷オリジナル
2018-05-31 14:33:261528ブラウズ

この記事では、主に PHP によってカプセル化されたページ ページング クラスを紹介し、PHP の数値演算と文字列演算の関連テクニックを分析して、ページング関数を完全な例の形で実現します。必要な方は参考にしてください。以下の通り:

クラスファイル:

<?php
  //分页工具类
  class Page{
    /*
     * 获取分页字符串
     * @param1 string $uri,分页要请求的脚本url
     * @param3 int $counts,总记录数
     * @param4 int $length,每页显示的记录数
     * @param5 int $page = 1,当前页码
     * @return string,带有a标签的,可以点击发起请求的字符串
    */
    public static function getPageStr($uri,$counts,$length,$page = 1){
      //构造一个能够点击的字符串
      //得到数据显示的字符串
      $pagecount = ceil($counts/$length);        //总页数
      $str_info = "当前一共有{$counts}条记录,每页显示{$length}条记录,一共{$pagecount}页,当前是第{$page}页";
      //生成可以操作的连接:首页 上一页 下一页 末页
      //求出上一页和下一页页码
      $prev = ($page <= 1) ? 1 : $page - 1;
      $next = ($page >= $pagecount) ? $pagecount : $page + 1;
      $str_click = <<<END
        <a href="{$uri}?page=1">首页</a>
        <a href="{$uri}?page={$prev}">上一页</a>
        <a href="{$uri}?page={$next}">下一页</a>
        <a href="{$uri}?page={$pagecount}">末页</a>
END;
      //按照页码分页字符串
      $str_number = &#39;&#39;;
      for($i = 1;$i <= $pagecount;$i++){
        $str_number .= "<a href=&#39;{$uri}?page={$i}&#39;>{$i}</a> ";
      }
      //下拉框分页字符串:利用js的onchang事件来改变当前脚本的href
      $str_select = "<select onchange=\"location.href=&#39;{$uri}?page=&#39;+this.value\">";
      //将所有的页码放入到option
      for($i = 1;$i <= $pagecount;$i++){
        if($i == $page)
          $str_select .= "<option value=&#39;{$i}&#39; selected=&#39;selected&#39;>{$i}</option>";
        else
          $str_select .= "<option value=&#39;{$i}&#39;>{$i}</option>";
      }
      $str_select .= "</select>";
      //返回值
      return $str_info . $str_click . $str_number . $str_select;
    }
}

概要: 以上がこの記事の全内容です。皆さんの学習に役立つことを願っています。

関連する推奨事項:

php MSsqlサーバーに接続する方法の概要

PHPデータベース操作mongodbの使用方法


PHPでin_array暗黙的変換を実装する手順の詳細な説明


以上がPHP でカプセル化されたページ ページング クラスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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