PHP プログラムの高速化探索キャッシュ出力_PHP チュートリアル
コンテンツキャッシュ出力 PEAR キャッシュ
次に、より一般的に使用されるキャッシュ テクノロジの調査を開始します。これがこの記事の焦点でもあります。まず、PEAR のキャッシュ パッケージを使用します。 PEAR は、ファイル、データベース、またはメモリにコンテンツをキャッシュできます。ファイルを例に挙げてみましょう。
以下はキャッシュなしのPHPアプレットです:
pear_content_cache1.php
<?php
echo "これがコンテンツです。
";
echo "現在時刻は" . date('M-d-Y H:i:s A', time()) .
?>
上記のプログラムは非常に単純ですが、これにキャッシュを追加します。
pear_content_cache2.php
<?php
require_once 'キャッシュ/Output.php';
//書き込み可能でなければならないキャッシュ ディレクトリを設定します
// nocache 変数が空の場合、キャッシュ内のコンテンツを使用します
//最新のコンテンツを取得したい場合は、それを nocache 変数に割り当てる必要があります
{
// 一意のキャッシュ識別子を作成します
// リクエスト + Cookie 情報
$cache_id = $cache->generateID(array('url' => $_REQUEST,'post' =>$_POST,'cookies' => $HTTP_COOKIE_VARS));
}
それ以外は
{
//最新のコンテンツを取得したい場合は、ID は空です
$cache_id = null;
}
//キャッシュIDに対応するキャッシュコンテンツが利用可能か確認します
if ($content = $cache->start($cache_id))
{
//キャッシュはすでに存在するので、直接出力してスクリプトを終了します
//コンテンツがキャッシュに存在しないため、新しいコンテンツを生成してキャッシュに書き込みます
echo "これがコンテンツです。
";
echo "現在時刻は" . date('M-d-Y H:i:s A', time()) .
// コンテンツをキャッシュに書き込みます
echo $cache->end();
?>
これら 2 つのファイルをそれぞれ更新すると、pear_content_cache1.php の「現在時刻は」という行の時刻が更新によって変化しますが、pear_content_cache2.php のこの行は変化しないことがわかります。これは、pear_content_cache2.php がキャッシュを使用して、ユーザーが要求したコンテンツを静的ファイルに保存するためです。ユーザーが再度リクエストすると、プログラムがコンテンツを動的に生成する必要がなく、ファイルから直接出力されます。
pear_content_cache2.phpの場合、ユーザーがキャッシュ内の古い情報ではなく最新の情報を読みたい場合。その後、 http://…/pear_content_cache2.php?nocache=1 を使用してアクセスすると、キャッシュ機能が無効になります。更新すると、それに応じて時間が変更されることを確認します。
PEAR コンテンツ キャッシュ クラスの使用法を要約すると:
1. PEAR パッケージを含める場合は、必ず正しいパスを設定してください。
2. Output.php にキャッシュ クラスが含まれます
require_once 'キャッシュ/Output.php';
3.キャッシュディレクトリを設定します
$cacheDir = './pear_cache';
このディレクトリが書き込み可能であることを確認します。キャッシュ データは、このディレクトリのサブディレクトリに書き込まれます。
4.出力キャッシュオブジェクトを作成します
$cache = new Cache_Output('file',array('cache_dir' => $cacheDir));
最初のパラメータは「ファイル」ベースのキャッシュを使用することを示し、2 番目のパラメータはキャッシュ ディレクトリに関連付けられた配列です。
5.一意のキャッシュ ID を生成します
$cache_id = $cache->generateID(array('url' => $_REQUEST,'post' =>$_POST,'cookies' => $HTTP_COOKIE_VARS));
ここでの $cache オブジェクトのgenerateID() メソッドは、このリクエストを一意に識別し、他のリクエストと区別するための情報の配列 (URL、HTTP POST データ、および HTTP Cookie) を提供します。
6.キャッシュIDに対応するキャッシュデータが既に存在するかどうかの論理判定文を追加し、存在する場合はデータを取得してスクリプトを終了します。
if ($content = $cache->start($cache_id))
{$content をエコーします。 終了(); }
7. 上記の論理ステートメントの後にコンテンツを生成するコードを配置し、キャッシュ オブジェクトの使用を終了します。
echo $cache->end();
関数キャッシュ出力PEARキャッシュ
PEARは出力内容をキャッシュするだけでなく、特定の関数を呼び出した結果をキャッシュすることもできます。これは非常に興味深い機能です。プログラムで特定の関数が頻繁に使用され、呼び出しの結果が同じである場合、特にこの関数の実行が遅い場合には、試してみることをお勧めします。
次に、非常にゆっくりと実行される関数、slowFunction() へのバッファリングされた呼び出しを実装します。
<?php
$cacheDir = './pear_cache/'; $cache = 新しい Cache_Function('file',array('cache_dir' => $cacheDir)); $arr = array('リンゴ', '梨', 'スイカ'); $cache->call('slowFunction', $arr); echo '
';
$arr = array('リンゴ', '梨', 'スイカ');
スロー関数($arr);
{
echo "実行が非常に遅い関数:(
";
echo "現在の時刻は " . date('M-d-Y H:i:s A', time()' です。
foreach ($arr as $fruit)
{
echo "$フルーツを食べました
";
}
)
?>
例のスクリプト実行結果は以下の通りです:
現在の時刻は Jul-28-2004 17:15:57 PM です
リンゴを食べました
梨を食べました
スイカを食べました
実行が非常に遅い関数:(
現在の時刻は 2004 年 7 月 28 日 17:17:55 PM です
梨を食べました
スイカを食べました
コードでは、Cache/Function.phpクラスを使用して関数バッファリング機能を実行しています。 $cache 変数は、ファイルベースの関数キャッシュを使用する Cache_Function オブジェクトで、$cacheDir ディレクトリに保存されます。関数呼び出しをキャッシュするには、Cache_Function オブジェクト $cache の call() メソッドを次のように使用します: $cache->call(‘slowFunction’, $arr);
http://www.bkjia.com/PHPjc/372079.html

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











PHPは、サーバー側で広く使用されているスクリプト言語で、特にWeb開発に適しています。 1.PHPは、HTMLを埋め込み、HTTP要求と応答を処理し、さまざまなデータベースをサポートできます。 2.PHPは、ダイナミックWebコンテンツ、プロセスフォームデータ、アクセスデータベースなどを生成するために使用され、強力なコミュニティサポートとオープンソースリソースを備えています。 3。PHPは解釈された言語であり、実行プロセスには語彙分析、文法分析、編集、実行が含まれます。 4.PHPは、ユーザー登録システムなどの高度なアプリケーションについてMySQLと組み合わせることができます。 5。PHPをデバッグするときは、error_reporting()やvar_dump()などの関数を使用できます。 6. PHPコードを最適化して、キャッシュメカニズムを使用し、データベースクエリを最適化し、組み込み関数を使用します。 7

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHPは、電子商取引、コンテンツ管理システム、API開発で広く使用されています。 1)eコマース:ショッピングカート機能と支払い処理に使用。 2)コンテンツ管理システム:動的コンテンツの生成とユーザー管理に使用されます。 3)API開発:RESTFUL API開発とAPIセキュリティに使用されます。パフォーマンスの最適化とベストプラクティスを通じて、PHPアプリケーションの効率と保守性が向上します。

PHPは依然として動的であり、現代のプログラミングの分野で重要な位置を占めています。 1)PHPのシンプルさと強力なコミュニティサポートにより、Web開発で広く使用されています。 2)その柔軟性と安定性により、Webフォーム、データベース操作、ファイル処理の処理において顕著になります。 3)PHPは、初心者や経験豊富な開発者に適した、常に進化し、最適化しています。

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPは、特に迅速な開発や動的なコンテンツの処理に適していますが、データサイエンスとエンタープライズレベルのアプリケーションには良くありません。 Pythonと比較して、PHPはWeb開発においてより多くの利点がありますが、データサイエンスの分野ではPythonほど良くありません。 Javaと比較して、PHPはエンタープライズレベルのアプリケーションでより悪化しますが、Web開発により柔軟性があります。 JavaScriptと比較して、PHPはバックエンド開発により簡潔ですが、フロントエンド開発のJavaScriptほど良くありません。

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。
