超強力なPHPページングクラス(PHPCHINAより転載)
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-11 20:00:38
1![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
/**
3
* ファイル名: ext_page.class.php
4
* @package: phpbean
5
* @author :feifengxlq
6
* @copyright :Copyright 2006 feifengxlq
7
* @license:バージョン 2.0
8
* @create:2006-5-31
9
* @modify:2006-6-1
10
* @modify:feifengxlq 2006-11-4
11
* 説明: 超強力なページング クラス、4 つのページング モード、デフォルトのページング スタイルは Baidu や Google に似ています。
12
* 2.0 の追加機能: カスタム スタイルのサポート、カスタム スタイルのサポート、PHP4 と PHP5 の両方のサポート、
13 * 詳細については、[url=http://www.phpobject. net/blog/read.php]http://www.phpobject.net/blog/read.php[/url]?![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
* 例:![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
* モード 4 A ページングモード: ![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
require_once('../libs/classes/page.class.php');![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
$page=new page(array('total'=>1000 ,' perpage'=>20));![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
echo 'mode:1
'.$page->show();
19
echo '
mode:2
'.$ page- >show(2);
20
echo '
mode:3
'.$page->show(3);
21
echo '
mode:4
'.$page- >show(4);
22
AJAX をオンにします: ![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
$ajaxpage=new page(array('total'=>1000,'perpage'=>20,'ajax' = >'ajax_page','page_name'=>'test'));![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
24
echo 'mode:1
'.$ajaxpage->show();
25
ページネーションの定義から継承表示モード: ![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
デモ: http://www.phpobject.net/blog![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
*/
28
クラス
ページ
29
{![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
/*
*
31
* config ,public
32
PB_page"
;
//
page URL ページを制御するために使用されるタグ。たとえば、xxx.php?PB_page=2 の PB_page '
;
/ /
次のページ 35
var $pre_page= ''
;//
前のページ 36 var $first_page='最初 '
; //
ホームページ 37 var$last_page= '最後'
;//
最後のページ 38 var $pre_bar=' '
;//
前のページングバー 39 var$ next_bar='>>'
; //
次のページバー 40 var$format_left= '['
;41
var $is_ajax= false;//
AJAX ページング モードをサポートするかどうか43
44 /** 45 * プライベート
46 *
47
$pagebarnum=10
;//
レコードストリップの数を制御します。49
ページ数 50var$ajax_action_name =''
;//AJAX アクションname
51 var $nowindex= 1
;//現在のページ52
var$url= "";// URLアドレスヘッダー
53
var $offset= 0; 54
55
/* * 56 * コンストラクター コンストラクター
57 *![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
58 * @param array $array['total'] ,$array['perpage'],$ array['nowindex'],$array['url'],$array['ajax']
59
*/![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
60![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
関数 ページ( $array![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
)
61
{ 62
if(is_array($array)){
63
if(!array_key_exists( '合計',$array))$this->エラー(__FUNCTION__,') 合計のパラメータが必要です」 );
64
$total=intval($array['total ']);
65
$perpage=(array_key_exists('perpage',$array ))?intval($ array['perpage']):10;
66
$nowindex =(array_key_exists( 'nowindex',$array))?intval($array['nowindex ']) :'';
67
$url=(array_key_exists('url',) $配列))?$配列 ['url']:'';
68
}else{
69
$total =$配列;
70
$perpage=10;
71
$nowindex='';
72
$url='';
73
}
74
if((!is_int($total))||() $合計0 ))$this->error(__FUNCTION__,$total.'は正の整数ではありません!' );
75
if((!is_int($perpage))||($perpage0)) $this->error(__FUNCTION__,$perpage.'は正の整数ではありません!');
76
if(!空($array['page_name']))$this-> セット(' page_name',$array['page_name']);//設置ページ名
77
$this->_set_nowindex($nowindex);//设置当前页
78
$this->_set_url( $url);//地上設置链址
79
$this->合計ページ=ceil($合計/$ );
80
$this->オフセット=($this->nowindex-1)* $this->ページごと;
81
if(!空($array['ajax ']))$this ->open_ajax($array['ajax']);//AJAXモードを開く
82
}
83
/**
84
* 変更がこのクラスに属さない場合、例外がスローされます
。 85
*
86
* @param string $var
87
*/
89
関数
set($var)
,$value) 90 {
91
if
(in_array
( $var ,get_object_vars( $this))) 92 $this
->$var
=$value; 93 else
{ 94
$this
->error(
__FUNCTION__, $var."はPに属しませんB_ページ!"); 95 }
96 ![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
97 }
98
/**
99
* 逆AJAXモードをオンにする
100
*
101
* @param string $action デフォルトの ajaxアクションをトリガーします。
102
*/
103
function open_ajax($action)
104
{
105
$this->is_ajax=true;
106
$this->ajax_action_name =$アクション;
107
}
108
/**
109
* 「次のページ」を表示するコードを取得します
110
*
111
* @param string $style
112
* @return string
113
next_page($style
=' '
) 115 {116
$this->![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
合計ページ){117
戻る $this-> _get_link($this-> _get_url(
$this->nowindex
+1),$this->next_page, $スタイル); 118 }119 return ''
.$style .![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
'"> '
.$this ->次のページ.'';120 }
121
122
/**
123
* 「前のページ」を表示するコードを取得します
124
*
125
* @param string $style
126
* @return string
127
*/
1 28
関数 pre_page( $ style='')
129
{
130
if($this -> nowindex>1 ){
131
戻る $this->_get_link($this->_get_url ($this-> nowindex -1),$this->pre_page,$style);
132
}
133
return ''.$style.' ">'. $this->pre_page.'';
134
}
135 ![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
136
/* **
140
*/
141![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
function
first_page(
$style=)
'')
142 {
143 if( $this->
nowindex==
1
){144
'. $style.'">
'.$this
->first_page.' ;145 }
146
戻る $this->_get_link($this->_get_url(1 )、$this ->first_page,$style);
147}![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
148![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
149
/**
150 * 「最後のページ」を表示するコードを取得します ![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
151 *![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
152 * @return string![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
153
*/
154
functionlast_page($style='')
155 {![超強力なPHPページングクラス(PHPCHINAより転載)](http://img.tuwenba.com/get/http://www.cnblogs.com/Images/OutliningIndicators/None.gif)
156
if($this - >nowindex==$this->合計ページ){
157 '. $style . '">'.$this->last_page.'' ;15 8 }
159
戻る $this->_get_link($this->_get_url( $this->合計ページ) 、$this->last_page、$style);
160
}
161
162
機能 nowbar($style='',$nowindex_style='')
163
{
164
$plus =ceil($this->pagebarnum/2);
165
if ($これ-> ページバーナム-$plus+$this->nowindex>$this->合計ページ)$plus =( $this->pagebarnum-$this->合計ページ+$this->nowindex);
166
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31