ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp5でページングを行う方法

thinkphp5でページングを行う方法

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼オリジナル
2019-08-26 11:53:302989ブラウズ

thinkphp5でページングを行う方法

実際には、ページング自体の内容はそれほど多くありません。ただし、スタイルの問題となると、かなり面倒に思えます。そこで、ページングクラスを見つけて調べてみました。一般的な構造について話しましょう。ページのスタイルを変更する必要がある場合は、自分でスタイルを変更できます。事故を防ぐためにも、事前にバックアップをしておくことをお勧めします。

最初はページング呼び出しです。tp5 を呼び出すのは比較的簡単です:

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

関数の最初のパラメーターは各ページに表示されるページ数で、2 番目のパラメーターは表示方法です。合計で多くのページが表示されます。

関連する推奨事項: 「ThinkPHP チュートリアル

(もともと 10 ページあり、5 ページだけを書くと、6 ~ 10 ページは表示されませんが、アドレス このパラメータにジャンプして対応するコンテンツを取得することもできます)

thinkphp5でページングを行う方法

デフォルトはこのエフェクトです。ただし、これはブートストラップ テンプレートでのみ使用できる効果です。ブートストラップの特性に基づいて特別に命名されました。

つまり、他のテンプレートでは、これは単なる数値です。

ページネーション ファイルの場所は、thinkphp\library\think\paginator にあります。
ドライバーにはページング スタイルのオリジナル バージョンが含まれています。直接変更すると、後のメンテナンスに役立ちません。そしてtp5では非常に便利な改造方法も提供しています。ソース ファイルをコピーしてフォルダーに貼り付け、名前を変更します。次に、クラス Bootstrap の単語「Bootstrap」を変更して、Paginator をファイルの名前に拡張します。次に、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() 関数には、他にも 2 つの関数があります:

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

今のレンダリング機能はボックスとして理解でき、これら 2 つの機能はボタンとして理解できます。スタイルを変更したい場合は、ここで変更してください。これができる人なら特に問題はないでしょう。

getLinks() は真ん中にあります。基本的にはコードを見れば大まかな意味がわかります。基本的にはこれらの場所から開始してページングを変更できます。

以上がthinkphp5でページングを行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。