ThinkPHP5:數組分頁

昨天在做項目時候查詢出來的數據是一個數組,調用不了TP5自帶的     paginate()        方法來進行分頁

找了一天的資源,終於找到了一個能使用的辦法

首先先下載一個文件

http://crasphter.cn/usr/uploads/2018/08/274427271.zip

這是一個PHP文件,把文件複製粘貼到   thinkphp\library\think  文件夾下

然後在文件代碼頭部加上:

namespace think;

回到控制器

在頭部引用剛剛的文件

use think\Pagination;
$re = db('auth_rule')->field('id,title')->limit('4')->select();
        dump($re);

PS:爲了測試,隨便弄了一個數組

然後添加分頁代碼

$re = db('auth_rule')->field('id,title')->limit('4')->select();
        //實例化pagination類  ,$items帶分頁的數組,$limit每頁的數目
        $pagination = new Pagination($re,2);
        //分頁後的數組
        $re = $pagination ->getItem();
        //分頁的樣式
        $page = $pagination ->render();

        dump($re);

大功告成!!

在這裏說一下這個方法的缺點:

1、這個分頁是先獲取數組所有數據再進行分頁,所以並不會做到節省運行內存,不建議數據量過大時使用

2、下載的文件是原創文章附帶的文件,下載是沒用說明命名空間的,所以不能直接使用,所以記得添加   namespace think;

如果各位如有更好的寫法,請聯繫一下小白我!!謝謝!

說明:該文章屬於轉載文章,已添加原創文章鏈接,如有侵權,請聯繫我刪除文章!該文章只供參考,有問題請各位自己擔當哈!!在文章是在20180922編寫,內容有可能調用變動或者無法使用,請各位注意一下!

原創文章鏈接:http://crasphter.cn/index.php/archives/66/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章