当前位置:首页 > PHP教程 > php分页 > 列表

一款php分页代码

发布:smiling 来源: PHP粉丝网  添加日期:2013-12-16 16:53:44 浏览: 评论:0 

以前写过很多php 分页类但是今天这款分页程序我感觉是很好的,简洁实用,代码合理并没有多余的代码,是一款不错分页类函数哦。

  1. class multipage { 
  2.  var $total
  3.  var $perpage
  4.  var $pages
  5.  var $maxpage
  6.  var $offset = 9; 
  7.  var $curr_page
  8.  
  9.  function init($total$perpage$maxpage) { //初始化页数 
  10.   $this->total; 
  11.   $this->perpage; 
  12.   $this->maxpage; 
  13.   $this->offset = 9; 
  14.  } 
  15.  
  16.  function getpagelist() {//获取分页列表 
  17.   $result_pages = ""
  18.   $this->pages = ceil($this->total / $this->perpage); 
  19.    
  20.   if ($this->pages > $this->maxpage) { 
  21.    $from = $this->curr_page - $this->offset; 
  22.    if ($from < 1) { 
  23.     $from = 1; 
  24.    } 
  25.    $to = $from + $this->maxpage - 1; 
  26.    if ($to > $this->pages) { 
  27.     $to = $this->pages; 
  28.     if (($to - $from) < $this->maxpage) { 
  29.      $from = $from - 1; 
  30.     } 
  31.    } 
  32.   } else { 
  33.    $from = 1; 
  34.    $to = $this->pages; 
  35.   } 
  36.    
  37.   $p = 0; 
  38.   for($i = $from$i <= $to$i++) { 
  39.    $result_pages[$p] = $i
  40.    $p++; 
  41.   } 
  42.    
  43.   return $result_pages
  44.  } 
  45.  
  46.  function getfirst() { //获取第一页 
  47.   if ($this->curr_page > 1 && $this->pages > 1) { 
  48.    return 1; 
  49.   } else { 
  50.    return ""
  51.   } 
  52.  } 
  53.  
  54.  function getlast() { //取末页 
  55.   if ($this->pages > 1 && $this->curr_page < $this->pages) { 
  56.    return $this->pages; 
  57.   } else { 
  58.    return ""
  59.   } 
  60.  } 
  61.  
  62.  function getprev() {//上一页 
  63.   $prevpage = $this->curr_page - 1; 
  64.   if ($prevpage > 0) { 
  65.    return $prevpage
  66.   } else { 
  67.    $prevpage = ""
  68.    return $prevpage
  69.   } 
  70.  } 
  71.  
  72.  function getnext() {//下一页 
  73.   $nextpage = $this->curr_page + 1; 
  74.   if ($nextpage <= $this->pages) { 
  75.    return $nextpage
  76.   } else { 
  77.    $nextpage = ""
  78.    return $nextpage
  79.   } 
  80.  } 
  81.  
  82.  function gettotal() {//共多少页 
  83.   if ($this->pages > 0) { 
  84.    return $this->pages; 
  85.   } else { 
  86.    return 1; 
  87.   } 
  88.  } 
  89.  
  90. //分页类的使用方法 
  91. $page = new multipage(); 
  92. $page->gettotal(); //总页娄 
  93. $page->getnext();//下一页 

 

Tags: php 分页

分享到: