易優cms分頁paginate方法說明
5.0.5 分頁方法返回think\Paginator對象(用法不變)
5.0.1 支持第二個參數直接傳入總記錄數ThinkPHP5.0內置了分頁實現,要給數據添加分頁輸出功能在5.0變得非常簡單,可以直接在Db類查詢的時候調用paginate方法:
// 查詢狀態為1的用戶數據 并且每頁顯示10條數據
$list = Db::name(‘user’)->where(‘status’,1)->paginate(10);
// 把分頁數據賦值給模板變量list
$this->assign(‘list’, $list);
// 渲染模板輸出
return $this->fetch();也可以改成模型的分頁查詢代碼:
// 查詢狀態為1的用戶數據 并且每頁顯示10條數據
$list = User::where(‘status’,1)->paginate(10);
// 把分頁數據賦值給模板變量list
$this->assign(‘list’, $list);
// 渲染模板輸出
return $this->fetch();模板文件中分頁輸出代碼如下:
{volist name=’list’ id=’user’}
{/volist}
{$list->render()}也可以單獨賦值分頁輸出的模板變量
// 查詢狀態為1的用戶數據 并且每頁顯示10條數據
$list = User::where(‘status’,1)->paginate(10);
// 獲取分頁顯示
$page = $list->render();
// 模板變量賦值
$this->assign(‘list’, $list);
$this->assign(‘page’, $page);
// 渲染模板輸出
return $this->fetch();模板文件中分頁輸出代碼如下:
{volist name=’list’ id=’user’}
{/volist}
{$page}默認情況下,生成的分頁輸出是完整分頁功能,帶總分頁數據和上下頁碼,分頁樣式只需要通過樣式修改即可,完整分頁默認生成的分頁輸出代碼為:
傳入總記錄數( V5.0.1)
V5.0.1版本開始,支持傳入總記錄數而不會自動進行總數計算,例如:
// 查詢狀態為1的用戶數據 并且每頁顯示10條數據 總記錄數為1000
$list = User::where(‘status’,1)->paginate(10,1000);
// 獲取分頁顯示
$page = $list->render();
// 模板變量賦值
$this->assign(‘list’, $list);
$this->assign(‘page’, $page);
// 渲染模板輸出
return $this->fetch();分頁后數據處理 (V5.0.9)
V5.0.9版本開始 支持分頁類后數據直接each遍歷處理,方便修改分頁后的數據,而不是只能通過模型的獲取器來補充字段。
$list = User::where(‘status’,1)->paginate()->each(function($item, $key){
$item->nickname = ‘think’;
});如果是Db類操作分頁數據的話,each方法的閉包函數中需要使用返回值,例如:
$list = Db::name(‘user’)->where(‘status’,1)->paginate()->each(function($item, $key){
$item[‘nickname’] = ‘think’;
return $item;
});簡潔分頁
如果你僅僅需要輸出一個 僅僅只有上下頁的分頁輸出,可以使用下面的簡潔分頁代碼:
// 查詢狀態為1的用戶數據 并且每頁顯示10條數據
$list = User::where(‘status’,1)->paginate(10,true);
// 把分頁數據賦值給模板變量list
$this->assign(‘list’, $list);
// 渲染模板輸出
return $this->fetch();簡潔分頁模式的輸出代碼為:
由于簡潔分頁模式不需要查詢總數據數,因此可以提高查詢性能。
分頁參數
主要的分頁參數如下:
參數 描述
list_rows 每頁數量
page 當前頁
path url路徑
query url額外參數
fragment url錨點
var_page 分頁變量
type 分頁類名分頁參數的設置方式有兩種,第一種是在配置文件中定義,例如:
//分頁配置
‘paginate’ => [
‘type’ => ‘bootstrap’,
‘var_page’ => ‘page’,
],type屬性支持命名空間,例如:
//分頁配置
‘paginate’ => [
‘type’ => ‘\org\page\bootstrap’,
‘var_page’ => ‘page’,
],也可以在調用分頁方法的時候傳入,例如:
$list = Db::name(‘user’)->where(‘status’,1)->paginate(10,true,[
‘type’ => ‘bootstrap’,
‘var_page’ => ‘page’,
]);如果您的問題還未解決可以聯系站長付費協助。

有問題可以加入技術QQ群一起交流學習
本站vip會員 請加入無憂模板網 VIP群(50604020) PS:加入時備注用戶名或昵稱
普通注冊會員或訪客 請加入無憂模板網 技術交流群(50604130)
客服微信號:15898888535
聲明:本站所有文章資源內容,如無特殊說明或標注,均為采集網絡資源。如若內容侵犯了原著者的合法權益,可聯系站長刪除。