重构后的分页类
来自技术开发小组内部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=0,select=1,input=1,linkPage=2样式
后端默认的分页样式
后端normal=0,select=1,input=1,linkPage=3样式
<div id="pager"><?=$show?></div>在点评的view中使用
<div class="page"><?=$show?></div>