PHP头条
热点:

Thinkphp实现分页-PHP源码


php代码

//生成分页的方法
//obj是需要分页表的实例化对象,limit是当前页左右显示的条数。
//$map为分页时where 的条件。
//$this->size是我自己类下的变量。为每页显示的条数
    public function CreatePage($obj,$limit,$map=''){
        //总条数
        $totalRows=$obj->where($map)->count();
        //总页数
        $totalPage=(round($totalRows/$limit,0));
        //当前页。 
        $nowPage=I('get.p')?I('get.p'):1;
        if($nowPage>$this->size){
            $start=$nowPage-$this->size;
        }
        else{
            $start=1;
        }
        if($totalPage>($nowPage+$this->size)){
            $end=$nowPage+$this->size;
        }
        else{
            $end=$totalPage;
        }
        if($nowPage==$totalPage){
            $start=$nowPage-$this->size;$end=$totalPage;
        }
        $page['totalRows']=$totalRows;
        $page['totalPage']=$totalPage;
        $page['nowPage']=$nowPage;
        $page['start']=$start;
        $page['end']=$end;
        return $page;//返回给调用处。。赋值。

前端展示页



上一页 {$i} {$i} 下一页 《script》 var url="{:Q('p',($page['nowPage']+1))}"; var nowpage="{$page['nowPage']}"; var totalPage="{$page['totalPage']}"; 《script》 跳转

调用

$page=$this->CreatePage($this->obj,$this->size,$map);
//此处为TP的查询操作。
$data=$this->obj
    ->where($map)
    ->field('del,sequence,channel',true)
    //重点是这里。$page['nowPage']页码。
    //$this->size 显示的条数
    ->page($page['nowPage'],$this->size)
    ->order('sequence')
    ->select()

www.phpzy.comtrue/php/32607.htmlTechArticleThinkphp实现分页-PHP源码 php代码 //生成分页的方法//obj是需要分页表的实例化对象,limit是当前页左右显示的条数。//$map为分页时where 的条件。//$this->size是我自己类下的变量。为每页显示...

相关文章

PHP之友评论

今天推荐