重构后的分页类

来自技术开发小组内部wiki
跳转至: 导航搜索
重构后的分页类减少了控制器代码的冗余,使用更少的代码实现分页功能

控制器中的使用

1 $this->load->library('New_pager');//引入新的分页类
2 list($data,$show) = $this->new_pager->showPage($sql,$arr,$url);//函数调用
参数 描述
$sql(必须) 操作的SQL语句或者需要分页的数组
$arr(不必须) 需要配置的分页参数,数组的的键名分别为:'pageSize','pageList','normal','linkPage','select','input'
1 'pageSize':每页显示条数,值为大于0的任何整数,默认为20
2 'pageList':显示连续页码数目,默认为10
3 'normal':普通样式,即首页、尾页两个标签的显示,默认为1(打开)
4 'linkPage':页码列表,可选值(0,1,2,3),默认为1,0代表关闭
5 'select':下拉列表框样式,默认为0(关闭)
6 'input':输入框样式,默认为0(关闭)
以上还可以通过设置对象属性的方法赋值(如:$this->new_pager->pageSize = 10)
$url(不必须) 需要匹配的html格式,(例:/g157_tc72_o3_p1.html)

如果对地址栏中的地址直接使用page参数或者对地址栏中的url直接可以匹配到页数 (例:[点击访问]),则无需传入url,此种情况,类本身会进行处理,会自动匹配当前页

 由于showPage返回的是一个包含数据集和分页信息的数组,所以使用list()函数将返回信息进行拆分
  
 注:该类还提供了一个返回总行数的接口getTotalRows();

效果图

前端默认的分页样式

Normal dianping.jpg

前端normal=0,select=1,input=1,linkPage=2样式

Style dianping.jpg

后端默认的分页样式

Normal admin.jpg

后端normal=0,select=1,input=1,linkPage=3样式 

Style admin.jpg


注:在后台的view中使用
<div id="pager"><?=$show?></div>
在点评的view中使用
<div class="page"><?=$show?></div>