thinkPHP5分頁功能實現法子分析

更新:2017-10-27    編輯:冰穎    來源:會員投稿    人氣:加載中...    字號:|

標簽:實現  分頁  功能  分析  方法  thinkPHP5  百度搜索

本文實例講述了thinkPHP5分頁功能實現法子。分享給大家供大家參考,具體如下:

其實分頁自身的內容也不是很多。不過牽扯到樣式的問題感到挺煩。于是找到了分頁類看了一下。把大體的結構說一下。如果有需要改動頁面樣式的可以自行改動樣式。最好提前備份,防止意外。

首先是分頁的調用,tp5的調用相對非常容易

$mod = new \app\index\model\Blogmsg(); $mo = $mod->paginate(1,14); $this->assign('list', $mo); // 渲染模板輸出 return $this->fetch('list'); //模板方面 <div> <ul> {volist} <li> {$user.nickname}</li> {/volist} </ul> </div> {$list->render()}

函數的第一個參數是每一頁顯示幾個,第二個參數是總共顯示多少頁。

(原本有10頁,你只寫5頁,那么6-10頁是不會顯示的,但是地址欄該參數還是可以跳轉過去獲取對應的內容…)

thinkPHP5分頁功能實現法子分析

默認的是這樣的效果。不過這是在bootstrap模板下才有的效果。專門根據bootstrap的特性做的命名。

也就是說,在其他的模板下,只是單純的數字。

分頁的文件的位置在thinkphp\library\think\paginator里。
driver里有一個分頁樣式的原版。直接改不利于后期維護。而且tp5也給你一個非常方便的改動法子。文件夾內源文件復制粘貼重新命名。然后改一句話class Bootstrap extends Paginator中的Bootstrap改成文件的名字。再去config.php里找到分液襦關的配置。

'type' => 'bootstrap',改成你的文件名字。就可以直接調用了。

我把幾個牽扯到樣式的函數名稱列出來,簡單的說一下存在的意義。

render()渲染分頁,大白話就是這個分頁類的主體。

return sprintf( '<ul>%s %s %s</ul>', $this->getPreviousButton(), $this->getLinks(), $this->getNextButton() );

這里就牽扯到css的樣式,,可以根據自己的需要調換。

頁碼自身沒有首頁和尾頁單項。(但是函數為你供給了尾頁的值)
可以自己去做一個填寫。復制getNextButton()進行相關的改動就可以了。

在getNextButton()函數里會看見另外兩個函數

getAvailablePageWrapper(url,page)和getDisabledTextWrapper($text)。

剛剛的渲染函數是可以理解為箱體,這兩個函數可以理解為按鈕了。想改樣式在這里該就行了。能做到這里的都不會有太大的問題。

getLinks()則是管中間的?创a基本是也能看出來大體意思。改動分頁基本從這些地方著手就可以了。


評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)

站點導航

您可能在找這些
四川快乐12电视软件 网络联盟兼职靠谱吗 德甲排名积分榜 黑龙江36选7技巧 36选7二等奖多少钱 《百家乐大赢家》 体彩十一运夺金 彩票 权重股有哪些股票 宝博斗地主官网下载 意甲球队排名 好运南京麻将ios