thinkphp paging is very convenient to use the paginate() method, but if you need to further process the query information before it can be output on the front page, you must use the each() method , perform traversal operations on the results obtained from the query.
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(); }
If the paging is output directly, there will be no style, irregularity, and ugly.
You can improve the output effect through a simple style:
<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>
The effect is:
Another style shared by someone online :
<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>
The effect is:
We can use different styles to write and adjust freely.
Of course, you can also add some content you want to display, such as: how many records are there in the query that meets the conditions;
Of course, you can refactor or create a new paging style class
Similar to this, this is how to achieve it.
Of course, you can also use a lazier method and modify it directly in this file:
Below I will simply add a total number of records for reference:
Then such a statistic will be added after paging:
This article comes from the ThinkPHP framework technical article column: http://www.php.cn/phpkj/thinkphp/
The above is the detailed content of How to implement paging in thinkphp. For more information, please follow other related articles on the PHP Chinese website!