首页 > Web开发 > 详细

thinkphp分页显示

时间:2015-10-28 16:58:41      阅读:272      评论:0      收藏:0      [点我收藏+]

先在Common\Comon里建一个function.php公共方法,然后在里面新建一个getpage方法,代码如下:

<?php 
/**
 * TODO 基础分页的相同代码封装,使前台的代码更少
 * @param $m 模型,引用传递
 * @param $where 查询条件
 * @param int $pagesize 每页查询条数
 * @return \Think\Page
 */
function getpage(&$m,$where,$pagesize=10){
    $m1=clone $m;//浅复制一个模型
    $count = $m->where($where)->count();//连惯操作后会对join等操作进行重置
    $m=$m1;//为保持在为定的连惯操作,浅复制一个模型
    $p=new Think\Page($count,$pagesize);
    $p->lastSuffix=false;
    $p->setConfig(‘header‘,‘<li class="rows">共<b>%TOTAL_ROW%</b>条记录  每页<b>%LIST_ROW%</b>条  第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</li>‘);
    $p->setConfig(‘prev‘,‘上一页‘);
    $p->setConfig(‘next‘,‘下一页‘);
    $p->setConfig(‘last‘,‘末页‘);
    $p->setConfig(‘first‘,‘首页‘);
    $p->setConfig(‘theme‘,‘%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END% %HEADER%‘);

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

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

    return $p;
}
 ?>

然后在控制器里调用此方法:

public function consumerList(){
        $m=M(‘consumer‘);
        $p=getpage($m,$where,20);
        $this->data=$m->field(true)->where($where)->order(‘id desc‘)->select();
        $this->page=$p->show();
        $this->display();
    }

 再然后给分页添加样式:

/*分页样式*/
.rows{
    display:inline;
    list-style-type:none;
}
.num{
    padding-left:5px;
}
.current{
    margin-left: 3px;
    padding:5px;
    color:white;
    background: gray
}

最后在需要的位置直接调用分配过来的分页信息就行了,如{$page},注意:不用在它外层再添加div或其他标签了!

thinkphp分页显示

原文:http://www.cnblogs.com/hltswd/p/4917691.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!