イミテーションページングクラスBaiduの

1 <?PHP
 2  クラスページ
 3。 {
 4      プライベート $ MAXNUM ; // 総データ量
5。     プライベート $ NUM ; // ページ番号の数を示す
6。     プライベート $ページ ; // このページ
7。     専用 の$ PAGENUM ; // 合計ページ
8      プライベート $のURL ; // URL 
9      プライベート $ urlParam ; // urlパラメータ
10      プライベート $スタートページ ; // 左端現在表示しているページは、セクションのページ番号を表示します
11      プライベート $のENDPAGE ; // 右端の現在表示しているページ
12は、     プライベート の$ STR =「」; //は、変数の一般的な方法で異なる範囲を差部材と変数のプロパティに注意し、一般的な変数ならば、2のメソッド文字列は、に一緒に結合することができない
13で 
14      パブリック 関数 __construct($ MAXNUM$ NUM 15      {
 16          $この - > MAXNUM = $ MAXNUM ;
 17          $この - > NUM = $ NUM ;
 18である         $この - > PAGENUM = CEIL$この - > MAXNUM / $この - > NUM);
 19。         $この- >ページ= ISSET$ _GET [ 'ページ'])?$ _GET [ 'ページ']:1 ;
20          $この - > URL = $ _SERVER [ 'PHP_SELF']; // ディレクトリ+ファイル名
21          $この - > urlparam();
22          $この - > checkpage();
23          // ます$ this-> pagemax(); 
24      }
 25  
26      パブリック 関数urlparam()
 27      {
 28          foreachの$ _GET  として $ K => $ V ){
 29              もし$ V = '' &&!$ K =! 'ページ' ){
 30                  $この - > urlparam = $ kを。 '='。$ V '&'。;
31              }
 32          }
 33      }
 34  
35      パブリック 関数ショーページ()
 36      {
 37          // $列str = ''; 
38          $この - > STR = '当前第'。$この - >ページは'页、共'。$この - > PAGENUM '页'。;
39          $この - > STR =「<a href="'. $this -> URL。 '?'。$この- > urlparam.'page = 1" >首页</a>の」;
 40          $この - > STR = '<のhref = "'。これを$ - > URL。 '?'。$この - > urlparam.'page =」(。$この - ">上一页</a>の'>のページ-1)' ;
 41          $この - > ページ()は、
 42          $この - > STR =。 '<のhref = "'。これを$ - > URL。 '?'。$この - > urlparam.'page =」($この - >ページ+ 1)。 ' ">下一页</a>の' ;
 43          $この - > STR = '<HREF ="'。これを$ - > URL。 '?'。これを$ - > urlparam.'page =」。$この - > PAGENUM '">尾页</a>の'。;
 44          リターン $この- > STR;
 45      }
 46は、 
47      // 現在表示しているページ番号セクション
 48      //...11 1213141516 ...イミテーション効果Baiduのタブ
49      パブリック 関数ページ()
 50      {
 51である         のIF$この - >ページ<= 10 ){
 52は             $この - >スタートページ= 1 ;
 53である          } {
 54である         // このページにより、10を分割し、モザイクに、このような現在のページ15として、11ページから始まるこの治療方法によって得られます群のうち、その後マイナス1の目的は、このページが30であれば、21彼
55              $この >スタートページ= - フロア(($この - >ページ-1)/ 10)「1」;. //。文字列のこのタイプを使用する場合にのみステッチ1 
56はある         }
 57です         $この - > ENDPAGE = $この - > +スタートページ9; // 10ページ表示
58を         IF$この - > ENDPAGE> = $この - > PAGENUM){
 59              $この - > ENDPAGE = $この - > PAGENUM; //
 60          }
 61である         ため$ I = $この - >スタートページ; $ I <= $この - > ENDPAGE; $ I ++ ){
 62は             / / ここで文字列一緒にショーページエンドにあるので、同じ変数名で方法)ここで、変数名は(SHOWPAGEなければならないことに注意してください
 63             //まだ、でも同じ変数名と異なる変数のスコープは、OKではありません。唯一の方法を使用して可変部材の性質
64              IF$この - >ページ== $ I 65                  $この - > STR =「<a style="color:red;" href="'. $this -> 。 '?'。URLはこれを$ - '> urlparam.'page =。$ I「>。' ' $ I </a>に&NBSP; '' ;
 66              他に
67                  $この - > STR =。' <A = HREF " ' この$ - > URL?。' ' $この - > urlparam.'page ='。$ iが '">'。$ iの '</a>を'。;
68          } 
 69          リターン $この - > STR。  //これだけでは効果は呼び出さない要求されない百度タブ呼び出された場合、維持するための方法を記述することである
70      }
 71である 
72      パブリック 関数checkpage()
 73は     、{
 74          IF$この - >ページ> = $この - > PAGENUM) {
 75              $この - >ページ= $この - > PAGENUM;
 76          }
 77          IF$この - >ページ<= 1 ){
 78              $この - >ページ= 1 ;
 79          }
 80      }
 81  
82      パブリック 関数限界()
 83     {
 84          の$ NUM =($この - >ページ-1)* $この - > NUM。
85          $は制限 = $ numは。 ''。$ num個86          リターン $限度87      }
 88  }
 89  
90  $ pを = 新しいページ(90、3 );
91  エコー $ P - >ショーページ();

パーツ参照します。https://www.cnblogs.com/liangzia/p/10438263.html

おすすめ

転載: www.cnblogs.com/bneglect/p/11129373.html