电脑安全

您当前的位置:主页 > 电脑安全 >

经典php 分页类- php通用分页类-网络编程

来源:[db:来源]标题:   分页    编辑:电脑技术全能网 时间:2019-09-22 12:30

原标题:经典php 分页类- php通用分页类-网络编程
   <?php class My_Lib_pages{ private $each_disNums;//每页表现的条目数 private $nums;//总条目数 var $current_page;//以后被选中的页 private $sub_pages;//每次表现的页数 private $pageNums;//总页数 private $page_array = array();//用来结构分页的数组 private $subPage_link;//每个分页的链接 private $subPage_type;//表现分页的范例 /* __construct是SubPages的结构函数,用来在创立类的时间主动运转. @$each_disNums 每页表现的条目数 @nums 总条目数 @current_num 以后被选中的页 @sub_pages 每次表现的页数 @subPage_link 每个分页的链接 @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,$subPage_type){ $this->each_disNums=intval($each_disNums); $nums= $nums==0 ? 1: $nums; $this->nums=intval($nums); $this->pageNums=ceil($nums/$each_disNums); $this->current_page=intval($current_page); $this->current_page= $this->current_page<=0 ? 1: $this->current_page; $this->current_page= $this->current_page > $this->pageNums ? 1 : $this->current_page; $this->sub_pages=intval($sub_pages); $this->subPage_link=$subPage_link; $this->show_SubPages($subPage_type); //echo $this->pageNums."--".$this->sub_pages; } /* __destruct析构函数,当类不在应用的时间挪用,该函数用来开释资本。 */ function __destruct(){ unset($each_disNums); unset($nums); unset($current_page); unset($sub_pages); unset($pageNums); unset($page_array); unset($subPage_link); unset($subPage_type); } /* show_SubPages函数用在结构函数外面。并且用来推断表现甚么模样的分页 */ function show_SubPages($subPage_type){ if($subPage_type == 1){ $this->subPageCss1(); }elseif ($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;$i<count($current_array);$i++){ $current_array[$i]=$i+1; } }elseif ($this->current_page <= $this->pageNums && $this->current_page > $this->pageNums - $this->sub_pages + 1 ){ for($i=0;$i<count($current_array);$i++){ $current_array[$i]=($this->pageNums)-($this->sub_pages)+1+$i; } }else{ for($i=0;$i<count($current_array);$i++){ $current_array[$i]=$this->current_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.="[<a href='$firstPageUrl'>首页</a>] "; $subPageCss1Str.="[<a href='$prewPageUrl'>上一页</a>] "; }else { $subPageCss1Str.="[首页] "; $subPageCss1Str.="[上一页] "; } if($this->current_page < $this->pageNums){ $lastPageUrl=$this->subPage_link.$this->pageNums; $nextPageUrl=$this->subPage_link.($this->current_page+1); $subPageCss1Str.=" [<a href='$nextPageUrl'>下一页</a>] "; $subPageCss1Str.="[<a href='$lastPageUrl'>尾页</a>] "; }else { $subPageCss1Str.="[下一页] "; $subPageCss1Str.="[尾页] "; } return $subPageCss1Str; } /* 结构典范形式的分页 以后第1/453页 [首页] [上页] 1 2 3 4 5 6 7 8 9 10 [下页] [尾页] */ function subPageCss2(){ $subPageCss2Str=""; $subPageCss2Str.="以后第<span style=color:red;>".$this->current_page."</span>/".$this->pageNums."页 "; if($this->current_page > 1){ $firstPageUrl=$this->subPage_link."1"; $prewPageUrl=$this->subPage_link.($this->current_page-1); $subPageCss2Str.="<a href='$firstPageUrl'>首页</a> "; $subPageCss2Str.="<a href='$prewPageUrl'><<</a>"; }else {$subPageCss2Str.="<span class=disabled>首页</span>";$subPageCss2Str.="<span class=disabled><<</span>";} $a=$this->construct_num_Page(); for($i=0;$i<count($a);$i++){ $s=$a[$i]; if($s == $this->current_page ){ $subPageCss2Str.="<span style='color:red;font-weight:bold;'>".$s."</span>"; }else{ $url=$this->subPage_link.$s; $subPageCss2Str.="<span class=current><a href='$url'>".$s."</a></span>"; } } if($this->current_page < $this->pageNums){ $lastPageUrl=$this->subPage_link.$this->pageNums; $nextPageUrl=$this->subPage_link.($this->current_page+1); $subPageCss2Str.=" <a href='$nextPageUrl'>>></a> "; $subPageCss2Str.="<a href='$lastPageUrl'>尾页</a> "; }else {$subPageCss2Str.="<span class=disabled>>></span>";$subPageCss2Str.="<span class=disabled>尾页</span>";} return $subPageCss2Str; } } ?>

上一篇:上一主题/下一主题的实现-网络编程

下一篇:没有了