ThinkPHP CURD方法的page方法也是模型連貫操作方法之一,是完全為分頁查詢而誕生的一個人性化操作方法。
用法
我們在前面已經分析了關於limit方法用於分頁查詢的情況,而page方法則是更人性化的進行分頁查詢的方法,我們還是以文章列表分頁為例來說,如果使用limit方法,我們要查詢第一頁和第二頁(假設我們每頁輸出10條數據)寫法如下:
$Article = M('Article'); $Article->limit('0,10')->select(); // 查詢第一頁數據 $Article->limit('10,10')->select(); // 查詢第二頁數據
雖然利用擴展類庫中的分頁類Page可以自動計算出每個分頁的limit參數,但是如果要自己寫就比較費力了,如果用page方法來寫則簡單多了,例如:
$Article = M('Article'); $Article->page('1,10')->select(); // 查詢第一頁數據 $Article->page('2,10')->select(); // 查詢第二頁數據
顯而易見的是,使用page方法你不需要計算每個分頁數據的起始位置,page方法內部會自動計算。
自3.1版本以後,page方法也支持2個參數的寫法,例如:
$Article->page(1,10)->select();
和
$Article->page('1,10')->select();
等效。
page方法還可以和limit方法配合使用,例如:
$Article->limit(25)->page(3)->select();
當page方法只有一個值傳入的時候,表示第幾頁,而limit方法則用於設置每頁顯示的數量,也就是說上面的寫法等同於:
$Article->page('3,25')->select();