ホームページ > バックエンド開発 > PHPチュートリアル > PHP自動ページング機能_PHPチュートリアル

PHP自動ページング機能_PHPチュートリアル

WBOY
リリース: 2016-07-20 11:09:43
オリジナル
1155 人が閲覧しました

phpチュートリアルの自動ページング機能

SQLコードを繰り返し記述したくない場合は、以下の関数を使用して自動処理することができます。

$__t_page_moyo_html = '';
/**
*
* 一時コード:ページング処理関数
* @param string $sql
*/
function page_moyo($sql = '')
{
global $__t_page_moyo_html;
if ($sql == '')
{
$を返す__t_page_moyo_html;
}
// config
$max = 12;
$flag = 'page';
// ステップ.1 SQL文の処理
$sql_count = preg_replace('/select.*?from/is', 'select count(*) as mcnt from', $sql);
// ステップ 2 データ量を取得します
$result = dbc()->query($sql_count)->getrow();
$total = $result ['mcnt'];
// ステップ .3 ページングが必要かどうかを判断します
if ($total < $max)
{
return $sql;
}
// ステップ .4 現在のページ番号を取得します
$pn = isset ($_get[$flag]) ? (int)$_get[$flag] : 1;
if ($pn <= 0) $pn = 1;
// ステップ 5 SQL ステートメントを再構築します
$sql = $sql . 'limit '.($pn-1)*$max.','.$max;
// ステップ .6 ページング HTML コードを組み立てます
$url = $_server['request_uri'];
if (preg_match( '/'.$flag.'=d+/i', $url))
{
$url = preg_replace('/[&]?'.$flag.'=d+/', '' , $url);
}
$pageall = ceil($total/$max);
$pre = '';
if ($pn > 1)
{
$pre = ' / 前のページ';
}
$nxt = ' / 次のページ';
$html = 'ホームページ'.$pre.$nxt.' / 最後のページ';
$__t_page_moyo_html = $html;
return $sql;
}


SQL クエリを実行する前に、page_moyo を使用して SQL ステートメントを処理します
$sql = page_moyo($sql);
その後必要です ページング リンクが表示される page_moyo 出力を直接呼び出します
echo page_moyo();

大量のデータ量を含む 2 つの連続した SQL クエリを実行する場合は、最初のクエリの後にその時点でページング コードを保存する必要があります。そうでない場合は、次のクエリが実行されます。 SQLクエリはカバーされます


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/444794.html技術記事 PHPチュートリアルの自動ページング機能はSQLコードを繰り返し書きたくないので、以下の関数を使って自動処理します。 $__t_page_moyo_html = ''; /** * * 一時コード:ページング処理関数 * @para...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート