欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

超强PHP分页类(转自PHPCHINA)

程序员文章站 2022-05-17 12:59:23
...
  1超强PHP分页类(转自PHPCHINA)
  2超强PHP分页类(转自PHPCHINA)/**
  3超强PHP分页类(转自PHPCHINA) * filename: ext_page.class.php
  4超强PHP分页类(转自PHPCHINA) * @package:phpbean
  5超强PHP分页类(转自PHPCHINA) * @author :feifengxlq
  6超强PHP分页类(转自PHPCHINA) * @copyright :Copyright 2006 feifengxlq
  7超强PHP分页类(转自PHPCHINA) * @license:version 2.0
  8超强PHP分页类(转自PHPCHINA) * @create:2006-5-31
  9超强PHP分页类(转自PHPCHINA) * @modify:2006-6-1
 10超强PHP分页类(转自PHPCHINA) * @modify:feifengxlq 2006-11-4
 11超强PHP分页类(转自PHPCHINA) * description:超强分页类,四种分页模式,默认采用类似baidu,google的分页风格。
 12超强PHP分页类(转自PHPCHINA) * 2.0增加功能:支持自定义风格,自定义样式,同时支持PHP4和PHP5,
 13超强PHP分页类(转自PHPCHINA) * to see detail,please visit [url=http://www.phpobject.net/blog/read.php]http://www.phpobject.net/blog/read.php[/url]?
 14超强PHP分页类(转自PHPCHINA) * example:
 15超强PHP分页类(转自PHPCHINA) * 模式四种分页模式:
 16超强PHP分页类(转自PHPCHINA)   require_once('../libs/classes/page.class.php');
 17超强PHP分页类(转自PHPCHINA)   $page=new page(array('total'=>1000,'perpage'=>20));
 18超强PHP分页类(转自PHPCHINA)   echo 'mode:1
'.$page->show();
 19超强PHP分页类(转自PHPCHINA)   echo '
mode:2
'.$page->show(2);
 20超强PHP分页类(转自PHPCHINA)   echo '
mode:3
'.$page->show(3);
 21超强PHP分页类(转自PHPCHINA)   echo '
mode:4
'.$page->show(4);
 22超强PHP分页类(转自PHPCHINA)   开启AJAX:
 23超强PHP分页类(转自PHPCHINA)   $ajaxpage=new page(array('total'=>1000,'perpage'=>20,'ajax'=>'ajax_page','page_name'=>'test'));
 24超强PHP分页类(转自PHPCHINA)   echo 'mode:1
'.$ajaxpage->show();
 25超强PHP分页类(转自PHPCHINA)   采用继承自定义分页显示模式:
 26超强PHP分页类(转自PHPCHINA)   demo:http://www.phpobject.net/blog
 27超强PHP分页类(转自PHPCHINA) */
 28超强PHP分页类(转自PHPCHINA)class page 
 29超强PHP分页类(转自PHPCHINA){
 30超强PHP分页类(转自PHPCHINA) /**
 31超强PHP分页类(转自PHPCHINA)  * config ,public
 32超强PHP分页类(转自PHPCHINA)  */
 33超强PHP分页类(转自PHPCHINA) var $page_name="PB_page";//page标签,用来控制url页。比如说xxx.php?PB_page=2中的PB_page
 34超强PHP分页类(转自PHPCHINA) var $next_page='>';//下一页
 35超强PHP分页类(转自PHPCHINA) var $pre_page='';//上一页
 36超强PHP分页类(转自PHPCHINA) var $first_page='First';//首页
 37超强PHP分页类(转自PHPCHINA) var $last_page='Last';//尾页
 38超强PHP分页类(转自PHPCHINA) var $pre_bar='';//上一分页条
 39超强PHP分页类(转自PHPCHINA) var $next_bar='>>';//下一分页条
 40超强PHP分页类(转自PHPCHINA) var $format_left='[';
 41超强PHP分页类(转自PHPCHINA) var $format_right=']';
 42超强PHP分页类(转自PHPCHINA) var $is_ajax=false;//是否支持AJAX分页模式 
 43超强PHP分页类(转自PHPCHINA) 
 44超强PHP分页类(转自PHPCHINA) /**
 45超强PHP分页类(转自PHPCHINA)  * private
 46超强PHP分页类(转自PHPCHINA)  *
 47超强PHP分页类(转自PHPCHINA)  */ 
 48超强PHP分页类(转自PHPCHINA) var $pagebarnum=10;//控制记录条的个数。
 49超强PHP分页类(转自PHPCHINA) var $totalpage=0;//总页数
 50超强PHP分页类(转自PHPCHINA) var $ajax_action_name='';//AJAX动作名
 51超强PHP分页类(转自PHPCHINA) var $nowindex=1;//当前页
 52超强PHP分页类(转自PHPCHINA) var $url="";//url地址头
 53超强PHP分页类(转自PHPCHINA) var $offset=0;
 54超强PHP分页类(转自PHPCHINA) 
 55超强PHP分页类(转自PHPCHINA) /**
 56超强PHP分页类(转自PHPCHINA)  * constructor构造函数
 57超强PHP分页类(转自PHPCHINA)  *
 58超强PHP分页类(转自PHPCHINA)  * @param array $array['total'],$array['perpage'],$array['nowindex'],$array['url'],$array['ajax']超强PHP分页类(转自PHPCHINA)
 59超强PHP分页类(转自PHPCHINA)  */
 60超强PHP分页类(转自PHPCHINA) function page($array)
 61超强PHP分页类(转自PHPCHINA) {
 62超强PHP分页类(转自PHPCHINA)  if(is_array($array)){
 63超强PHP分页类(转自PHPCHINA)     if(!array_key_exists('total',$array))$this->error(__FUNCTION__,'need a param of total');
 64超强PHP分页类(转自PHPCHINA)     $total=intval($array['total']);
 65超强PHP分页类(转自PHPCHINA)     $perpage=(array_key_exists('perpage',$array))?intval($array['perpage']):10;
 66超强PHP分页类(转自PHPCHINA)     $nowindex=(array_key_exists('nowindex',$array))?intval($array['nowindex']):'';
 67超强PHP分页类(转自PHPCHINA)     $url=(array_key_exists('url',$array))?$array['url']:'';
 68超强PHP分页类(转自PHPCHINA)  }else{
 69超强PHP分页类(转自PHPCHINA)     $total=$array;
 70超强PHP分页类(转自PHPCHINA)     $perpage=10;
 71超强PHP分页类(转自PHPCHINA)     $nowindex='';
 72超强PHP分页类(转自PHPCHINA)     $url='';
 73超强PHP分页类(转自PHPCHINA)  }
 74超强PHP分页类(转自PHPCHINA)  if((!is_int($total))||($total0))$this->error(__FUNCTION__,$total.' is not a positive integer!');
 75超强PHP分页类(转自PHPCHINA)  if((!is_int($perpage))||($perpage0))$this->error(__FUNCTION__,$perpage.' is not a positive integer!');
 76超强PHP分页类(转自PHPCHINA)  if(!empty($array['page_name']))$this->set('page_name',$array['page_name']);//设置pagename
 77超强PHP分页类(转自PHPCHINA)  $this->_set_nowindex($nowindex);//设置当前页
 78超强PHP分页类(转自PHPCHINA)  $this->_set_url($url);//设置链接地址
 79超强PHP分页类(转自PHPCHINA)  $this->totalpage=ceil($total/$perpage);
 80超强PHP分页类(转自PHPCHINA)  $this->offset=($this->nowindex-1)*$this->perpage;
 81超强PHP分页类(转自PHPCHINA)  if(!empty($array['ajax']))$this->open_ajax($array['ajax']);//打开AJAX模式
 82超强PHP分页类(转自PHPCHINA) }
 83超强PHP分页类(转自PHPCHINA) /**
 84超强PHP分页类(转自PHPCHINA)  * 设定类中指定变量名的值,如果改变量不属于这个类,将throw一个exception
 85超强PHP分页类(转自PHPCHINA)  *
 86超强PHP分页类(转自PHPCHINA)  * @param string $var
 87超强PHP分页类(转自PHPCHINA)  * @param string $value
 88超强PHP分页类(转自PHPCHINA)  */
 89超强PHP分页类(转自PHPCHINA) function set($var,$value)
 90超强PHP分页类(转自PHPCHINA) {
 91超强PHP分页类(转自PHPCHINA)  if(in_array($var,get_object_vars($this)))
 92超强PHP分页类(转自PHPCHINA)     $this->$var=$value;
 93超强PHP分页类(转自PHPCHINA)  else {
 94超强PHP分页类(转自PHPCHINA)   $this->error(__FUNCTION__,$var." does not belong to PB_Page!");
 95超强PHP分页类(转自PHPCHINA)  }
 96超强PHP分页类(转自PHPCHINA)  
 97超强PHP分页类(转自PHPCHINA) }
 98超强PHP分页类(转自PHPCHINA) /**
 99超强PHP分页类(转自PHPCHINA)  * 打开倒AJAX模式
100超强PHP分页类(转自PHPCHINA)  *
101超强PHP分页类(转自PHPCHINA)  * @param string $action 默认ajax触发的动作。
102超强PHP分页类(转自PHPCHINA)  */
103超强PHP分页类(转自PHPCHINA) function open_ajax($action)
104超强PHP分页类(转自PHPCHINA) {
105超强PHP分页类(转自PHPCHINA)  $this->is_ajax=true;
106超强PHP分页类(转自PHPCHINA)  $this->ajax_action_name=$action;
107超强PHP分页类(转自PHPCHINA) }
108超强PHP分页类(转自PHPCHINA) /**
109超强PHP分页类(转自PHPCHINA)  * 获取显示"下一页"的代码
110超强PHP分页类(转自PHPCHINA)  * 
111超强PHP分页类(转自PHPCHINA)  * @param string $style
112超强PHP分页类(转自PHPCHINA)  * @return string
113超强PHP分页类(转自PHPCHINA)  */
114超强PHP分页类(转自PHPCHINA) function next_page($style='')
115超强PHP分页类(转自PHPCHINA) {
116超强PHP分页类(转自PHPCHINA)  if($this->nowindex$this->totalpage){
117超强PHP分页类(转自PHPCHINA)   return $this->_get_link($this->_get_url($this->nowindex+1),$this->next_page,$style);
118超强PHP分页类(转自PHPCHINA)  }
119超强PHP分页类(转自PHPCHINA)  return ''.$style.'">'.$this->next_page.'';
120超强PHP分页类(转自PHPCHINA) }
121超强PHP分页类(转自PHPCHINA) 
122超强PHP分页类(转自PHPCHINA) /**
123超强PHP分页类(转自PHPCHINA)  * 获取显示“上一页”的代码
124超强PHP分页类(转自PHPCHINA)  *
125超强PHP分页类(转自PHPCHINA)  * @param string $style
126超强PHP分页类(转自PHPCHINA)  * @return string
127超强PHP分页类(转自PHPCHINA)  */
128超强PHP分页类(转自PHPCHINA) function pre_page($style='')
129超强PHP分页类(转自PHPCHINA) {
130超强PHP分页类(转自PHPCHINA)  if($this->nowindex>1){
131超强PHP分页类(转自PHPCHINA)   return $this->_get_link($this->_get_url($this->nowindex-1),$this->pre_page,$style);
132超强PHP分页类(转自PHPCHINA)  }
133超强PHP分页类(转自PHPCHINA)  return ''.$style.'">'.$this->pre_page.'';
134超强PHP分页类(转自PHPCHINA) }
135超强PHP分页类(转自PHPCHINA) 
136超强PHP分页类(转自PHPCHINA) /**
137超强PHP分页类(转自PHPCHINA)  * 获取显示“首页”的代码
138超强PHP分页类(转自PHPCHINA)  *
139超强PHP分页类(转自PHPCHINA)  * @return string
140超强PHP分页类(转自PHPCHINA)  */
141超强PHP分页类(转自PHPCHINA) function first_page($style='')
142超强PHP分页类(转自PHPCHINA) {
143超强PHP分页类(转自PHPCHINA)  if($this->nowindex==1){
144超强PHP分页类(转自PHPCHINA)      return ''.$style.'">'.$this->first_page.'';
145超强PHP分页类(转自PHPCHINA)  }
146超强PHP分页类(转自PHPCHINA)  return $this->_get_link($this->_get_url(1),$this->first_page,$style);
147超强PHP分页类(转自PHPCHINA) }
148超强PHP分页类(转自PHPCHINA) 
149超强PHP分页类(转自PHPCHINA) /**
150超强PHP分页类(转自PHPCHINA)  * 获取显示“尾页”的代码
151超强PHP分页类(转自PHPCHINA)  *
152超强PHP分页类(转自PHPCHINA)  * @return string
153超强PHP分页类(转自PHPCHINA)  */
154超强PHP分页类(转自PHPCHINA) function last_page($style='')
155超强PHP分页类(转自PHPCHINA) {
156超强PHP分页类(转自PHPCHINA)  if($this->nowindex==$this->totalpage){
157超强PHP分页类(转自PHPCHINA)      return ''.$style.'">'.$this->last_page.'';
158超强PHP分页类(转自PHPCHINA)  }
159超强PHP分页类(转自PHPCHINA)  return $this->_get_link($this->_get_url($this->totalpage),$this->last_page,$style);
160超强PHP分页类(转自PHPCHINA) }
161超强PHP分页类(转自PHPCHINA) 
162超强PHP分页类(转自PHPCHINA) function nowbar($style='',$nowindex_style='')
163超强PHP分页类(转自PHPCHINA) {
164超强PHP分页类(转自PHPCHINA)  $plus=ceil($this->pagebarnum/2);
165超强PHP分页类(转自PHPCHINA)  if($this->pagebarnum-$plus+$this->nowindex>$this->totalpage)$plus=($this->pagebarnum-$this->totalpage+$this->nowindex);
166超强PHP分页类(转自PHPCHINA)  超强PHP分页类(转自PHPCHINA)

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频