zentaoPHP框架的分頁(yè)解決方案

2018-10-11 10:02 更新

分頁(yè)對(duì)于基于數(shù)據(jù)庫(kù)的應(yīng)用來(lái)講,是很常見的一個(gè)問(wèn)題。新的zentaoPHP框架中,提供了內(nèi)置的分頁(yè)功能。使用如下:

我們以查詢用戶列表為例,在應(yīng)用中建立一個(gè)user的模塊,在其中的control文件中,定義一個(gè)browse方法,來(lái)完成分頁(yè)的功能:

一、browse方法關(guān)于分頁(yè)的三個(gè)參數(shù)

browse方法需要定義三個(gè)參數(shù):recTotal, recPerPage, pageID,變量名是固定的。

public function browse($recTotal, $recPerPage, $pageID)
{
    /* 加載分頁(yè)類,并生成pager對(duì)象。*/
    $this->app->loadClass('pager', $static = true);
    $pager = new pager($recTotal, $recPerPage, $pageID);

    /* 將分頁(yè)類傳給model,進(jìn)行分頁(yè)。*/
    $users = $this->user->getList($pager);
}

二、model方法中調(diào)用pager對(duì)象

model中定義一個(gè)getList方法,接收pager對(duì)象,并在dao查詢的時(shí)候,調(diào)用pager($pager)方法來(lái)生成分頁(yè)語(yǔ)句。

public function getList($pager)
{
    return $this->dao->select(*)->from('user')->page($pager)->fetchAll();
}

三、control中將pager對(duì)象賦值給模板

再回到control的browse方法中,將pager對(duì)象賦值給模板。

public function browse($recTotal, $recPerPage, $pageID)
{
    /* 加載分頁(yè)類,并生成pager對(duì)象。*/
    $this->app->loadClass('pager', $static = true);
    $pager = new pager($recTotal, $recPerPage, $pageID);

    /* 將分頁(yè)類傳給model,進(jìn)行分頁(yè)。*/
    $users = $this->user->getList($pager);
    
    /* 賦值到模板。*/
    $this->view->users = $users;
    $this->view->pager = $pager;
}

模板中顯示分類鏈接:show()方法有兩個(gè)參數(shù),$align: left, center, right,默認(rèn)是居右對(duì)齊。$type: full|short|shortest

<?php $pager->show();?>

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)