ThinkPHP 3.2 は強(qiáng)力なオープンソース PHP フレームワークであり、開(kāi)発プロセスではページング機(jī)能がよく使用されます。この記事では、ThinkPHP 3.2 で現(xiàn)在のページのページネーションを設(shè)定する方法に焦點(diǎn)を當(dāng)てます。
まず、コントローラーの各ページに表示されるデータの量を定義し (デフォルトは 20)、現(xiàn)在のページ番號(hào)を取得する必要があります。 I('p',1)
を通じて現(xiàn)在のページ番號(hào)を取得できます。パラメーターが渡されない場(chǎng)合、デフォルトのページ 1 が設(shè)定されます。
public?function?getList(){ ????$page_size?=?10;?//?每頁(yè)顯示10條數(shù)據(jù) ????$p?=?I('p',1);?//?獲取當(dāng)前頁(yè)碼 ????//TODO:?... }
次に、データベース內(nèi)でページング クエリを?qū)g行するには、データの各ページの開(kāi)始位置を計(jì)算する必要があります。クエリ テーブル user
內(nèi)のデータは、ThinkPHP が提供する limit
メソッドを使用してページングできると仮定します。
public?function?getList(){ ????$page_size?=?10;?//?每頁(yè)顯示10條數(shù)據(jù) ????$p?=?I('p',1);?//?獲取當(dāng)前頁(yè)碼 ????$user?=?M('User'); ????$offset?=?($p-1)*$page_size;?//?計(jì)算當(dāng)前頁(yè)數(shù)據(jù)的起始位置 ????$list?=?$user->limit($offset.','.$page_size)->select();//?按分頁(yè)查找數(shù)據(jù) }
上記のコードでは、データの開(kāi)始位置を計(jì)算するときに $offset = ($p-1)*$page_size;
を使用し、その後 limit() を使用します。
ページング クエリを?qū)g行するメソッド。
最後に、ユーザーが簡(jiǎn)単にページをめくることができるように、ページング コードをビュー ファイルにレンダリングする必要があります。 ThinkPHP が提供する page()
メソッドを使用して、ブートストラップ スタイルのページング コードを生成できます。
public?function?getList(){ ????$page_size?=?10;?//?每頁(yè)顯示10條數(shù)據(jù) ????$p?=?I('p',1);?//?獲取當(dāng)前頁(yè)碼 ????$user?=?M('User'); ????$offset?=?($p-1)*$page_size;?//?計(jì)算當(dāng)前頁(yè)數(shù)據(jù)的起始位置 ????$list?=?$user->limit($offset.','.$page_size)->select();//?按分頁(yè)查找數(shù)據(jù) ????$count?=?$user->count();?//?獲取數(shù)據(jù)總數(shù) ????$Page?=?new?\Think\Page($count,$page_size);?//?實(shí)例化分頁(yè)類 ????$show?=?$Page->show();?//?分頁(yè)顯示輸出 ????$this->assign('list',$list); ????$this->assign('page',$show);?//?分配分頁(yè)代碼到視圖 ????$this->display(); }
上記のコードでは、$count = $user->count();
を使用してデータの総數(shù)を取得し、new \Think\Page を使用します。 ($count,$page_size );
ページング クラスをインスタンス化し、ページごとのデータの合計(jì)數(shù)と量を渡し、最後に $Page->show();
を使用してページング表示文字列。次に、ページング文字列をビュー ファイルに渡し、$this->assign('page',$show);
を使用して変數(shù)を割り當(dāng)てます。
概要
ThinkPHP 3.2 で現(xiàn)在のページのページングを設(shè)定するには、次の 3 つの手順が必要です。
- コントローラーの各ページに表示されるデータの量を定義します?,F(xiàn)在のページ番號(hào)を取得する;
- データの各ページの開(kāi)始位置を計(jì)算し、ページング クエリに
limit
メソッドを使用する; - ビュー ファイルにページング文字列を生成するページめくり操作
以上がこの記事の全內(nèi)容です。ご參考になれば幸いです。ご質(zhì)問(wèn)やご提案がございましたら、コメント欄にメッセージを殘してください。すぐに対応させていただきます。
以上がThinkPHP 3.2 で現(xiàn)在のページのページネーションを設(shè)定する方法の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語(yǔ) Web サイトの他の関連記事を參照してください。

ホットAIツール

Undress AI Tool
脫衣畫(huà)像を無(wú)料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版
中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)