CanPHP开发手册--多样式分页类
说明:
- 类文件:CanPHP/lib/Page.class.php
- 分页类,提供四种显示样式,和ajax支持
- 默认会自动加载,不需要手动include
方法:__construct($array=array())
说明:构造函数
参数:
- 若不采用ajax分页,可以不用传递参数
- 若采用ajax分页,传递$array['ajax']='默认ajax触发的动作';
方法:getCurPage($url="")
说明:获取当前页的页码
参数:
- $url,设定的基准地址
- 返回当前的页码
方法:show($url="",$total=0,$perPage=10,$pageBarNum=10,$mode=1)
说明:控制分页显示风格,并返回输出结果
参数:
- $url,基准网址,若为空,将会自动获取,不建议设置为空
- $total,信息总条数
- $perPage,每页显示行数
- $pageBarNum,分页栏每页显示的页数
- $mode,显示风格,参数可为整数1,2,3,4任意一个
使用方法:
//显示列表 //得到的分页地址如:http://www.canphp.com/article/1-2.html public function _empty() { $cat_id=intval($_GET['_action']);//文章id if(empty($cat_id)) { $this->error('参数传递有误'); } $url=__URL__.'/'.$cat_id.'-{page}.html';//分页基准网址 $page=new Page(); $listRows=1;//每页显示的信息条数 $cur_page=$page->getCurPage($url); $limit_start=($cur_page-1)*$listRows; $limit=$limit_start.','.$listRows; $where=""; $condition=array(); $condition['cat_id']=$cat_id; $condition['status']=1; //获取行数 $count=$this->model->table('article')->where($condition)->count(); $list=$this->model->table('article')->where($condition)->order('id desc')->limit($limit)->select(); $this->assign('list',$list); $this->assign('page',$page->show($url,$count,$listRows)); $this->display('article/list'); }
contentPage($content,$separator="[page]",$url="",$pageBarNum=10,$mode=1)
说明:长文章内容分页
参数:
- $content,数据内容
- 内容分页的分隔符,需要自己定义分隔符
- $url,基准网址,若为空,将会自动获取,不建议设置为空
- $pageBarNum,分页栏每页显示的页数
- $mode,显示风格,参数可为整数1,2,3,4任意一个
使用方法:
$page=new Page(); $this->assign('page',$page->contentPage($content));