Chinaunix首页 | 论坛 | 博客
  • 博客访问: 710050
  • 博文数量: 143
  • 博客积分: 1554
  • 博客等级: 上尉
  • 技术积分: 1767
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-10 11:50
文章分类

全部博文(143)

文章存档

2017年(2)

2016年(5)

2015年(16)

2014年(25)

2013年(27)

2012年(16)

2011年(52)

分类: PHP

2015-04-07 14:55:19

TP3.2框架手册,有一个数据分页,不过每次都要写太多的代码,还有中文设置等有些麻烦,做为程序开发者,有必要整理下:

O、先看效果图


一、分页方法

点击(此处)折叠或打开

  1. /**
  2.  * TODO 基础分页的相同代码封装,使前台的代码更少
  3.  * @param $m 模型,引用传递
  4.  * @param $where 查询条件
  5.  * @param int $pagesize 每页查询条数
  6.  * @return \Think\Page
  7.  */
  8. function getpage(&$m,$where,$pagesize=10){
  9.     $m1=clone $m;//浅复制一个模型
  10.     $count = $m->where($where)->count();//连惯操作后会对join等操作进行重置
  11.     $m=$m1;//为保持在为定的连惯操作,浅复制一个模型
  12.     $p=new Think\Page($count,$pagesize);
  13.     $p->lastSuffix=false;
  14.     $p->setConfig('header','
  15. %TOTAL_ROW%条记录  每页%LIST_ROW%条  第%NOW_PAGE%页/共%TOTAL_PAGE%
  16. ');
  17.     $p->setConfig('prev','上一页');
  18.     $p->setConfig('next','下一页');
  19.     $p->setConfig('last','末页');
  20.     $p->setConfig('first','首页');
  21.     $p->setConfig('theme','%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END% %HEADER%');

  22.     $p->parameter=I('get.');

  23.     $m->limit($p->firstRow,$p->listRows);

  24.     return $p;
  25. }

getpage方法可以放在TP框架的 Application/Common/Common/function.php,这个文档可以专门放置一些通用的方法,在哪里都可以调用(如:Controller文件,View文件等)。
二、调用分页方法

点击(此处)折叠或打开

  1. $m=M('products');
  2. $p=getpage($m,$where,10);
  3. $list=$m->field(true)->where($where)->order('id desc')->select();
  4. $this->list=$list;
  5. $this->page=$p->show();
三。 view展示

点击(此处)折叠或打开

  1. <div class="pagination">
  2.   {$page}
  3. </div>



阅读(1385) | 评论(0) | 转发(0) |
0

上一篇:mongod日志切割

下一篇:PHP日期

给主人留下些什么吧!~~