首頁  >  文章  >  php框架  >  thinkphp如何實作分頁

thinkphp如何實作分頁

藏色散人
藏色散人原創
2019-07-03 14:05:597726瀏覽

thinkphp如何實作分頁

thinkphp分頁使用paginate()方法來實現是十分方便的,但是如果需要對查詢的資訊做進一步的處理才能在前台頁面輸出,就必須透過each()方法,對查詢得到的結果進行遍歷操作。

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();
    }

直接輸出分頁的話,沒有樣式,不規則,很難看。

下面可以透過簡單的樣式,改善輸出效果:

<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>

效果為: 

thinkphp如何實作分頁

網路上有人分享的另一個樣式:

<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>

效果為:

thinkphp如何實作分頁

我們可以採用不同的樣式,進行自由編寫和調整。

當然也可以增加一些想要展示的內容,例如:符合條件的查詢總共有多少筆記錄; 

當然你可以透過重構或新建一個分頁樣式類別

thinkphp如何實作分頁

類似這個,以此實作。

當然,你也可以採用比較懶的方法,直接在此文件中修改也可以: 

下面我只簡單的增加一個總記錄數,以做參考: 

thinkphp如何實作分頁

那麼就會在分頁後,加上這麼一個統計: 

thinkphp如何實作分頁

#本文來自ThinkPHP框架技術文章欄位:http://www.php.cn/phpkj/thinkphp/

##

以上是thinkphp如何實作分頁的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn