ホームページ バックエンド開発 PHPチュートリアル PHP アンチ Google ページング効果コード_PHP チュートリアル

PHP アンチ Google ページング効果コード_PHP チュートリアル

Jul 20, 2016 am 11:07 AM
function google php コード ページネーション 効果

function getPageRange($currentPage, $totalPages, $displaySize = 10) {
if ($totalPages return array();
} elseif ($displaySize > $ totalPages) {
$startPage = 1;
$endPage = $totalPages;
} else {
if ($currentPage % $displaySize === 0) {
$startPage = $currentPage - $displaySize + 1 ;
} else {
while (($currentPage % $displaySize)) {
--$currentPage;
}
$startPage = $currentPage + 1;
}
if ($startPage $startPage = 1;
}
$endPage = $startPage + $displaySize - 1;
if ($endPage > $totalPages) {
$endPage = $totalPages;
$startPage = $endPage - $displaySize + 1;
}
}
戻り範囲( $startPage, $endPage);
}関数getPageRange は、現在のページ数 $currentPage、合計数 $totalPages、および翻訳領域の長さ $displaySize の 3 つのパラメータを受け取り、承認は 10 です。 $currentPage を含む適切なターンテーブルを生成します。 まず、法外のパラメータ値を除外し、全体のセクション数またはセクション長が 0 より小さい場合に備えて検査を続けます。前述したように、翻訳セクションの長さを決定した後、すべてのセクション長を分析して、すべてのセクションに同じ数値が含まれているわけではないことを確認できます。幸いなことに、これは私たちの核心に影響を与えるものではありませんが、私たちは、決められた翻訳セクションの長さを下回る可能性があります。したがって、私たちは、核心の問題を解決する前に、最初に最終的な状況を検討し、1 つの領域のみを迅速に捕捉します。次に、領域の固有のプロパティを確認します。動的に切断された領域には、開始端と尾端があり、領域間には前後の順序があるため、静的な分を経て、最初の(首)区と最後の(尾)区に到達します。しかしながら、最初のブロック間隔を重ねてみると、総数が、決められたターンテーブル間隔よりも小さいことが分かる。 PHP 内にある range 関数は、セクション内のすべてのコードを生成します。

アルゴリズムは、現在のトップ $currentPage と翻訳セクションの長さ $displaySize を利用して、現在のトップがセクション内にある位置を判断し、さらにセクション間の開始と完全な無劣化を実現するためには、境界がはみ出す問題も考慮していますが、これも非常に単純で、最初のピンと最後のピンが 1 と全体の数の間にあるかどうかを判断するだけで十分です。ここまでで、コードの分析は完了しました。 次のアルゴリズムの 時間効率を見てみましょう。俗に、アルゴリズムの基本的な操作は要求モードであり、メソッドの実行時間は $currentPage と $displaySize の差によって決まります。値が大きいほど、要求する倍数が多く、実行時間が長くなり、プレゼンス構造になります。したがって、実行結果は短時間で完了します。 getPageRange関数数生成一翻訳区间、入力に必要なパラメータ:print_r(implode(',', getPageRange(18, 27, 20)));得られた結果は:
1,2,3,4,5,6 、7、8、9、10、11、12、13、14、15、16、17、18、19、20 は、Google の翻訳のため、これと Google 検索結果の表示とはまったく異なります。嗯、不要灰心、我们仍可用getPageRange関数数得到之相一致的結果,必要把问题再分解一下:
print_r(implode(',', array_merge(getPageRange(17, 17, 10), getPageRange(27, 27, 10))));得られた結果は:
8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/445001.html技術記事 function getPageRange($currentPage, $totalPages, $displaySize = 10) { if ($totalPages = 0 || $displaySize = 0) { return array(); } elseif ($displaySize $totalPages) { $startPage =...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

Google、AI Test Kitchen & Imagen 3 をほとんどのユーザーに公開 Google、AI Test Kitchen & Imagen 3 をほとんどのユーザーに公開 Sep 12, 2024 pm 12:17 PM

Google の AI Test Kitchen には、ユーザーが遊べる一連の AI 設計ツールが含まれており、現在、世界 100 か国をはるかに超える国のユーザーに公開されています。この動きにより、世界中の多くの人が Imagen 3、Google を使用できるようになるのは初めてです。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

See all articles