您的位置:首页 > 编程语言 > PHP开发

PHP代码片段简单分页实例

2018-03-10 14:41 746 查看
01
/**
02
 
* 自定义分页方法
03
 
* @param unknown_type $url     #分页url,页码采用'%s'表示,例如:http://test.ebers.com/tags/xxx/%s/
04
 
* @param unknown_type $cur_page        #当前页码
05
 
* @param unknown_type $page_fix        #当前页码前后需要显示多少个页码
06
 
* @param intval $total_rows            #数据总数
07
 
* @param intval $pagesize      #每页显示多少数据
08
 
* @param string $cur_page_calss        #当前页css样式名称
09
 
*/
10
public
 
function
 
pagenation(
$url
$cur_page
=1, 
$page_fix
=2, 
$total_rows
=0, 
$pagesize
=10, 
$cur_page_calss
=
'disable'
){
11
    
#计算总页数
12
    
$pagesize
 
$pagesize
>0?
$pagesize
:10;
13
    
$total_page
 
ceil
(
$total_rows
 
$pagesize
);
14
      
 
15
    
$code
 
''
;
16
    
if
(
$total_page
>1){
17
        
$pager
 
array
();
18
        
#首页
19
        
$pager
[] = sprintf( 
'<ul><li><a href="%s">首页</a></li>'
, sprintf(
$url
, 1) );
20
          
 
21
        
#页码列表
22
        
for
(
$page_num
=
$cur_page
-
$page_fix
$page_num
<
$cur_page
+
$page_fix
$page_num
++){
23
            
if
(
$page_num
<1 || 
$page_num
>
$total_page
){
24
                
continue
;
25
            
}
26
            
$pager
[] = sprintf( 
'<li class="%s"><a href="%s">%s</a></li>'
, ( 
$page_num
==
$cur_page
?
$cur_page_calss
:
''
 
), sprintf(
$url
$page_num
), 
$page_num
 
);
27
        
}
28
          
 
29
        
#末页
30
        
$pager
[] = sprintf( 
'<li><a href="%s">末页</a></li><li>共%s条,第%s/%s页</li></ul>'
, sprintf(
$url
$total_page
), 
$total_rows
$cur_page
$total_page
 
);
31
          
 
32
        
$code
 
= implode(
"\\n"
$pager
);
33
        
unset(
$pager
);
34
    
}
35
      
 
36
    
return
 
$code
;
37
}
文章来源:学什么网
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: