一、控制器中的代碼實現
在控制器方法中,我們可以通過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代碼,然后在頁面上渲染分頁導航。
下面是一個模板代碼的示例:
<ul>
{volist name="articles" id="article"} <li>{$article.title}</li> {/volist}
登錄后復制
</ul>
<!– 顯示分頁導航 –>
<div class="pagination">
{$page}
登錄后復制
我們使用了TP框架的volist標簽在代碼中循環輸出了文章列表。我們使用{$page}在循環結束后輸出分頁導航的HTML代碼。
以上就是thinkphp如何做分頁的詳細內容,更多請關注www.xfxf.net其它相關文章!