本文实例讲述了ThinkPHP3.2框架自带分页功能实现方法。分享给大家供大家参考,具体如下:
1.前端-分页代码:
<tfoot> <!--分页显示?--> <tr> <td textalign="center" cl nowrap="true" colspan="9" height="20"> <div class="pages">{$page}</div> </td> </tr> </tfoot>
2.创建分页样式:如page.css 并将以下代码复制到该文件中
.pages{float: right} .pages a,.pages span { display:inline-block; padding:2px 10px; border:1px solid #f0f0f0; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; font-size: 14px; } .pages a,.pages li { display:inline-block; list-style: none; text-decoration:none; color:#58A0D3; } .pages a.first,.pages a.prev,.pages a.next,.pages a.end{ margin:0 auto; } .pages a:hover{ border-color:#50A8E6; } .pages span.current{ background:#50A8E6; color:#FFF; font-weight:700; border-color:#50A8E6; }
3.前端页面引入分页样式css文件
4.控制器中编写index方法,将数据显示到模板
方法(一):利用Page类和limit方法分页
<?php namespace Admin\Controller; use Think\Controller; class DocController extends Controller{ function index(){ //实例化Doc数据表模型 $doc = D('Doc'); //调用count方法查询要显示的数据总记录数 $count = $doc->count(); //echo $count;die; $page = new \Think\Page($count,2); // 分页显示输出 $show = $page->show(); $this->assign('page',$show); // 进行分页数据查询 注意limit方法的参数要使用Page类的属性 $doc_list = $doc->limit($page->firstRow.','.$page->listRows)->select(); $this->assign('doc_list',$doc_list); $this->display(); }
方法(二):分页类和page方法的实现分页
<?php namespace Admin\Controller; use Think\Controller; class DocController extends Controller{ function index(){ //实例化Doc数据表模型 $doc = D('Doc'); //进行分页数据查询 注意page方法的参数的前面部分是当前的页数使用 $_GET[p]获取 $doc_list = $doc->page($_GET['p'] . ',2')->select(); $this->assign('doc_list', $doc_list);// 赋值数据集 $count = $doc->count();// 查询满足要求的总记录数 $page = new \Think\Page($count, 2);// 实例化分页类 传入总记录数和每页显示的记录数 $show = $page->show();// 分页显示输出 $this->assign('page', $show);// 赋值分页输出 $this->display(); // 输出模板 }
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。