php自訂分頁類完整執行個體

來源:互聯網
上載者:User
本文執行個體講述了php自訂分頁類。分享給大家供大家參考,具體如下:

<?phpheader("Content-type:text/html;Charset=utf-8");class SubPages{ private $each_disNums;//每頁顯示的條目數 private $nums;//總條目數 private $current_page;//當前被選中的頁 private $sub_pages;//每次顯示的頁數 private $pageNums;//總頁數 private $page_array = array();//用來構造分頁的數組 private $subPage_link;//每個分頁的連結 //private $subPage_type;//顯示分頁的類型/*  當@subPage_type=1的時候為普通分頁模式     example:  共4523條記錄,每頁顯示10條,當前第1/453頁 [首頁] [上頁] [下頁] [尾頁]     當@subPage_type=2的時候為經典分頁樣式     example:  當前第1/453頁 [首頁] [上頁] 1 2 3 4 5 6 7 8 9 10 [下頁] [尾頁] */ function __construct($each_disNums,$nums,$current_page,$sub_pages,$subPage_link){  $this->each_disNums=intval($each_disNums); $this->nums=intval($nums); if(!$current_page){ $this->current_page=1; }else{   $this->current_page=intval($current_page);  } $this->sub_pages=intval($sub_pages);  $this->pageNums=ceil($nums/$each_disNums);  $this->subPage_link=$subPage_link;  // $this->show_SubPages($subPage_type); }  // show_SubPages函數用在建構函式裡面。而且用來判斷顯示什麼樣子的分頁 /* function show_SubPages($subPage_type){   if($subPage_type == 1){   $this->subPageCss1();   }else if ($subPage_type == 2){   $this->subPageCss2();   }  }*/  //用來給建立分頁的數組初始化的函數。 function initArray(){   for($i=0;$i<$this->sub_pages;$i++){   $this->page_array[$i]=$i; }   return $this->page_array;  }  /* construct_num_Page該函數使用來構造顯示的條目  即使:[1][2][3][4][5][6][7][8][9][10] */ function construct_num_Page(){  if($this->pageNums < $this->sub_pages){   $current_array=array();   for($i=0;$i<$this->pageNums;$i++){    $current_array[$i]=$i+1;   }   }else{   $current_array=$this->initArray();   if($this->current_page <= 3){    for($i=0;$icurrent_page <= $this->pageNums && $this->current_page > $this->pageNums - $this->sub_pages + 1 ){    for($i=0;$ipageNums)-($this->sub_pages)+1+$i;    }   }else{    for($i=0;$icurrent_page-2+$i;    }   }  }  return $current_array;  } /*  構造普通模式的分頁  共4523條記錄,每頁顯示10條,當前第1/453頁 [首頁] [上頁] [下頁] [尾頁]  */ function subPageCss1(){  $subPageCss1Str="";  $subPageCss1Str.="共".$this->nums."條記錄,";  $subPageCss1Str.="每頁顯示".$this->each_disNums."條,";  $subPageCss1Str.="當前第".$this->current_page."/".$this->pageNums."頁 ";  if($this->current_page > 1){   $firstPageUrl=$this->subPage_link."1";   $prewPageUrl=$this->subPage_link.($this->current_page-1);   $subPageCss1Str.="[首頁] ";   $subPageCss1Str.="[上一頁] ";  }else {   $subPageCss1Str.="[首頁] ";   $subPageCss1Str.="[上一頁] ";  }  if($this->current_page < $this->pageNums){   $lastPageUrl=$this->subPage_link.$this->pageNums;   $nextPageUrl=$this->subPage_link.($this->current_page+1);   $subPageCss1Str.=" [下一頁] ";   $subPageCss1Str.="[尾頁] ";  }else {   $subPageCss1Str.="[下一頁] ";   $subPageCss1Str.="[尾頁]";  }  return $subPageCss1Str; //在此可以設定顯示的CSS樣式  } /*  構造傳統模式的分頁  當前第1/453頁 [首頁] [上頁] 1 2 3 4 5 6 7 8 9 10 [下頁] [尾頁]  */ function subPageCss2(){  $subPageCss2Str="";  $subPageCss2Str.="當前第".$this->current_page."/".$this->pageNums."頁 "; if($this->current_page > 1){   $firstPageUrl=$this->subPage_link."1";   $prewPageUrl=$this->subPage_link.($this->current_page-1);   $subPageCss2Str.="[首頁] ";   $subPageCss2Str.="[上一頁] ";  }else {   $subPageCss2Str.="[首頁] ";   $subPageCss2Str.="[上一頁] ";  } $a=$this->construct_num_Page();  for($i=0;$icurrent_page ){    $subPageCss2Str.="[".$s."]";   }else{    $url=$this->subPage_link.$s;    $subPageCss2Str.="[".$s."]";   }  }  if($this->current_page < $this->pageNums){   $lastPageUrl=$this->subPage_link.$this->pageNums;   $nextPageUrl=$this->subPage_link.($this->current_page+1);   $subPageCss2Str.=" [下一頁] ";   $subPageCss2Str.="[尾頁] ";  }else {   $subPageCss2Str.="[下一頁] ";   $subPageCss2Str.="[尾頁] ";  }  return $subPageCss2Str;  }}//使用如下/*include('../mysql.php');//每頁顯示的條數 $page_size=3;//總條目數$sql=mysql_query("select * from `stu_info`");$nums=mysql_num_rows($sql);//每次顯示的頁數 $sub_pages=10;//得到當前是第幾頁 if(!isset($_GET["p"])){ $pageCurrent=1; }else{  $pageCurrent=$_GET["p"]; } $subPages=new SubPages($page_size,$nums,$pageCurrent,$sub_pages,"page.php?p="); $page=$subPages->subPageCss2(); echo $page;//在此可以設定CSS樣式 $ss=mysql_query("select * from `stu_info` limit ".$page_size*($pageCurrent-1).",".$page_size); while($row=mysql_fetch_array($ss)){ echo $row['stunum'].''.$row['stuname'].''.$row['clanum'].'
'; }*/?>

希望本文所述對大家PHP程式設計有所協助。

以上就介紹了php自訂分頁類完整執行個體,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.