首頁  >  文章  >  後端開發  >  thinkPHP5實現分頁功能的方法分析

thinkPHP5實現分頁功能的方法分析

不言
不言原創
2018-06-09 11:56:591837瀏覽

這篇文章主要介紹了thinkPHP5分頁功能實現方法,結合實例形式較為詳細的分析了thinkPHP5實現分頁功能的具體步驟與相關操作技巧,需要的朋友可以參考下

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

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

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

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

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

(本來有10頁,你只寫5頁,那麼6-10頁是不會顯示的,但是網址列該參數還是可以跳到過去取得對應的內容…)

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

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

分頁的檔案的位置在thinkphp\library\think\paginator
driver裡有一個分頁樣式的原版。直接改不利於後期維護。而且tp5也給你一個非常方便的修改方法。資料夾內來源檔案複製貼上重新命名。然後改一句話class Bootstrap extends Paginator中的Bootstrap改成檔案的名字。再去config.php裡找到分頁相關的設定。

'type' => 'bootstrap',改成你的檔案名稱。就可以直接調用了。

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

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

return sprintf(
  &#39;<ul class="pagination">%s %s %s</ul>&#39;,
  $this->getPreviousButton(),
  $this->getLinks(),
  $this->getNextButton()
);

這裡就牽扯到css的樣式,可以依照自己的需求替換。

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

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

getAvailablePageWrapper(url,page)getDisabledTextWrapper($text )

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

getLinks()則是管中間的。看程式碼基本上是也能看出來大體意思。修改分頁基本上從這些地方著手就可以了。

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

ThinkPHP的資料分頁

#PHP後端方法實作網頁的分頁下標產生程式碼

關於thinkPHP3.2實作分頁自訂樣式的方法

##

以上是thinkPHP5實現分頁功能的方法分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn