Skip to content

Commit a59a949

Browse files
committed
改进分页类 增加url属性 可以支持路由情况下的分页地址,例如
$Page->url = 'User'; 生成的分页URL地址 可能 是 User/1、 User5
1 parent ef7777a commit a59a949

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

Extend/Library/ORG/Util/Page.class.php

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ class Page {
1616
public $rollPage = 5;
1717
// 页数跳转时要带的参数
1818
public $parameter ;
19+
// 分页URL地址
20+
public $url = '';
1921
// 默认列表每页显示行数
2022
public $listRows = 20;
2123
// 起始行数
@@ -40,7 +42,7 @@ class Page {
4042
* @param array $listRows 每页显示记录数
4143
* @param array $parameter 分页跳转的参数
4244
*/
43-
public function __construct($totalRows,$listRows='',$parameter='') {
45+
public function __construct($totalRows,$listRows='',$parameter='',$url='') {
4446
$this->totalRows = $totalRows;
4547
$this->parameter = $parameter;
4648
$this->varPage = C('VAR_PAGE') ? C('VAR_PAGE') : 'p' ;
@@ -72,18 +74,23 @@ public function show() {
7274
$nowCoolPage = ceil($this->nowPage/$this->rollPage);
7375

7476
// 分析分页参数
75-
if($this->parameter && is_string($this->parameter)) {
76-
parse_str($this->parameter,$parameter);
77-
}elseif(empty($this->parameter)){
78-
unset($_GET[C('VAR_URL_PARAMS')]);
79-
if(empty($_GET)) {
80-
$parameter = array();
81-
}else{
82-
$parameter = $_GET;
77+
if($this->url){
78+
$depr = C('URL_PATHINFO_DEPR');
79+
$url = rtrim(U('/'.$this->url),$depr).$depr.'__PAGE__';
80+
}else{
81+
if($this->parameter && is_string($this->parameter)) {
82+
parse_str($this->parameter,$parameter);
83+
}elseif(empty($this->parameter)){
84+
unset($_GET[C('VAR_URL_PARAMS')]);
85+
if(empty($_GET)) {
86+
$parameter = array();
87+
}else{
88+
$parameter = $_GET;
89+
}
8390
}
91+
$parameter[$p] = '__PAGE__';
92+
$url = U('',$parameter);
8493
}
85-
$parameter[$p] = '__PAGE__';
86-
$url = U('',$parameter);
8794
//上下翻页字符串
8895
$upRow = $this->nowPage-1;
8996
$downRow = $this->nowPage+1;

0 commit comments

Comments
 (0)