一、控制器中的程式碼實作
在控制器方法中,我們可以透過TP框架內建的分頁類別\think\paginator\driver \Bootstrap來完成資料分頁功能的實作。我們可以先查詢要進行分頁的數據,然後將查詢結果傳遞給分頁類,然後呼叫分頁類的render()方法即可。
下面是一個控制器程式碼的範例:
use \think\paginator\driver\Bootstrap;
public function index()
{
// 查询文章列表数据 $articles = Db::name('article')->paginate(10); // 将查询结果传递给分页类 $page = $articles->render(); // 将分页后的数据传递给模板 $this->assign('articles', $articles); $this->assign('page', $page); return $this->fetch('index');
}
每頁顯示資料量被指定為10,這是在範例程式碼中透過paginate()方法中的參數進行設定的。 $articles變數中儲存的是查詢出來的文章清單數據,$page變數中儲存的就是分頁後的HTML程式碼。
二、模板中的程式碼實作
在範本中,我們可以透過分頁類別的render()方法返回分頁HTML程式碼,然後在頁面上渲染分頁導航。
下面是一個範本程式碼的範例:
ff6d136ddc5fdfeffaf53ff6ee95f185
{volist name="articles" id="article"} <li>{$article.title}</li> {/volist}
929d1f5ca49e04fdcb27f9465b944689
44c76125bf23164f8e3587c2454a9a8e
{$page}
16b28748ea4df4d9c2150843fecfba68
我們使用了TP框架的volist標籤在程式碼中循環輸出了文章清單。我們使用{$page}在循環結束後輸出分頁導覽的HTML程式碼。
以上是thinkphp如何做分頁的詳細內容。更多資訊請關注PHP中文網其他相關文章!