ホームページ >php教程 >php手册 >3 行のコードのページング アルゴリズム (開始ページと終了ページの検索)

3 行のコードのページング アルゴリズム (開始ページと終了ページの検索)

WBOY
WBOYオリジナル
2016-06-21 08:52:31927ブラウズ

ページングに関しては、前のページ/次のページのみが表示される場合を除き、開始ページと終了ページを計算する必要があり、多くの if-else を使用して実装されているコードをよく見かけます。大量のコードがあり、簡潔ではないため、3 行のコードのみを必要とするアルゴリズムを提供します。

優れたページング アルゴリズムには次の利点があるはずです:

現在のページ番号はできるだけ中央に配置する必要があります。

「ホーム」と「最後」が使用できない場合 (現在最初または最後のページにある)、リンク ボタンの位置が変更されないように、これら 2 つのテキスト グループを非表示にしないでください。

アルゴリズムはシンプルです。

次のアルゴリズムには、上記の 1 と 3 の 2 つの利点があります。

PHP:

// $curr_index、現在のページ番号。

// $link_count、リンクの数。

// $page_count、現在のデータの総ページ数。

// $start、表示時の開始ページ番号。

// $end、表示時の終了ページ番号。

$start = max(1, $curr_index - intval($link_count/2));

$end = min($start + $link_count - 1, $page_count);

$start = max(1, $end - $link_count + 1);

JavaScript:

start = Math.max(1, curr_index - parseInt(link_count/2));

end = Math.min(page_count, start + link_count - 1);

start = Math.max(1, end - link_count + 1);



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