一、控制器中的程式碼實作
在控制器方法中,我們可以透過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程式碼,然後在頁面上渲染分頁導航。
下面是一個範本程式碼的範例:
{volist name="articles" id="article"} <li>{$article.title}</li> {/volist}