thinkphp如何实现分页
时间:2019-07-11 18:00
thinkphp分页使用paginate()方法来实现是十分方便的,但是如果需要对查询的信息做进一步的处理才能在前台页面输出,就必须通过each()方法,对查询得到的结果进行遍历操作。 直接输出分页的话,没有样式,不规则,很难看。 下面可以通过简单的样式,改善一下输出效果: 效果为: 网上有人分享的另一个样式: 效果为: 我们可以采用不同的样式,进行自由编写和调整。 当然也可以增加一些想要展示的内容,例如:符合条件的查询一共有多少条记录; 当然你可以通过重构或者新建一个分页样式类 类似这个,以此实现。 当然,你也可以采用比较懒的方法,直接在此文件中修改也可以: 下面我只简单的增加一个总记录数,以做参考: 那么就会在分页后,加上这么一个统计: 本文来自ThinkPHP框架技术文章栏目:http://www.php.cn/phpkj/thinkphp/ 以上就是thinkphp如何实现分页的详细内容,更多请关注gxlsystem.com其它相关文章!public function faculty()
{
//查询院系专业信息
//--查询院系专业信息
$result=Db::name('sys_faculty')->field('*')->paginate(10,false,[
'query'=>['user'=>'123','role'=>'student']
])->each(function($item, $key){
//在这里对查询的值进行进一步的整理!!!
$f_faculty=Db::name('sys_faculty')->field('name')->where('id',$item['parentid'])->find();
$item['faculty']=$f_faculty['name'];
//如果是Db类操作分页数据的话,each方法的闭包函数中需要使用返回值
return $item;
});
$this->assign(['result' => $result]);
return $this->fetch();
}
<style>
.page_li{
}
.page_li li{
display:inline-block;
padding:0px 10px;
}
.page_li li a{
display:inline-block;
padding:0px 4px;
color:#0088CC;
font-size:small;
}
.page_li li.active{
color:red;
font-size:large;
}
</style>
<style>
/*分页*/
.pagination {}
.pagination li {
display: inline-block;
margin-right: -1px;
padding: 5px;
border: 1px solid #e2e2e2;
min-width: 20px;
text-align: center;
}
.pagination li.active {
background: #009688;
color: #fff;
border: 1px solid #009688;
}
.pagination li a {
display: block;
text-align: center;
}
</style>