thinkphp如何做分頁

一、控制器中的代碼實(shí)現(xiàn)

在控制器方法中,我們可以通過TP框架內(nèi)置的分頁類thinkpaginatordriverbootstrap來完成數(shù)據(jù)分頁功能的實(shí)現(xiàn)。我們可以先查詢出要進(jìn)行分頁的數(shù)據(jù),然后將查詢結(jié)果傳遞給分頁類,然后調(diào)用分頁類的render()方法即可。

下面是一個(gè)控制器代碼的示例:

use thinkpaginatordriverBootstrap;

立即學(xué)習(xí)PHP免費(fèi)學(xué)習(xí)筆記(深入)”;

public function index()
{

//?查詢文章列表數(shù)據(jù) $articles?=?Db::name('article')->paginate(10);  //?將查詢結(jié)果傳遞給分頁類 $page?=?$articles->render();  //?將分頁后的數(shù)據(jù)傳遞給模板 $this->assign('articles',?$articles); $this->assign('page',?$page);  return?$this->fetch('index');

}

每頁顯示數(shù)據(jù)量被指定為10,這是在示例代碼中通過paginate()方法中的參數(shù)進(jìn)行設(shè)置的。$articles變量中存儲(chǔ)的是查詢出來的文章列表數(shù)據(jù),$page變量中存儲(chǔ)的就是分頁后的html代碼。

二、模板中的代碼實(shí)現(xiàn)

在模板中,我們可以通過分頁類的render()方法返回分頁HTML代碼,然后在頁面上渲染分頁導(dǎo)航。

下面是一個(gè)模板代碼的示例:

    {volist?name="articles"?id="article"} ????
  • {$article.title}
  • {/volist}

    {$page}

    我們使用了TP框架的volist標(biāo)簽在代碼中循環(huán)輸出了文章列表。我們使用{$page}在循環(huán)結(jié)束后輸出分頁導(dǎo)航的HTML代碼。

    以上就是

    ? 版權(quán)聲明
    THE END
    喜歡就支持一下吧
    點(diǎn)贊13 分享