ホームページ >バックエンド開発 >PHPチュートリアル >PHP キャッシュの詳細_PHP チュートリアル
キャッシュとは何なのか誰もが疑問に思うでしょう!何ができるでしょうか!実際、キャッシュはメモリに相当します。しばらく保存しておきましょう!
キャッシュとは、実行時にデータベースを実行する必要がないことを意味します。キャッシュを直接実行するだけです
一般的に言えば、キャッシュの目的は、アクセスを高速化するためにデータを 1 か所に置くことです。メモリが最速であることに疑いの余地はありませんが、何百 M ものデータがメモリに保存される可能性があります。もちろん、これは現実的ではありません。たとえば、ob_start() キャッシュ ページがオンになっている場合、ページのコンテンツはファイル ヘッダーを送信する前にメモリにキャッシュされます。出力は自動的にクリアされるか、待機します。 ob_get_contents の戻り、または ob_end_clean によって表示されるクリアは、静的ページの生成によく使用でき、テンプレートによく反映できます。この記事では、静的ページの生成について詳しく説明しています。これは 1 つの方法ですが、一時的なものであり、問題を解決する良い方法ではありません
キャッシュは一般にページ キャッシュとデータ キャッシュに分けられると言えます。 ADODB キャッシュはデータ キャッシュです。smarty はページ キャッシュです。 adodbのキャッシュは
<?php }include(./adodb/adodb.inc.php); $ADODB_CACHE_DIR='tmp'; $db=NewADOConnect('mysql'); $db->connect('localhost','root','123456','mysql'); $sql="select * from user"; $db->cacheexecute(300,$sql); ?> |
キャッシュはこのようにTMPディレクトリに生成されます! (キャッシュ ファイルはシリアル化されたデータです。) 次回実行時に、キャッシュからデータを直接読み取ります。 SMARTY キャッシュ:
<?phprequire('./smarty/Smarty.class.php'); $smarty = new Smarty; Z)$smarty->caching = true;if(!$smarty->is_cached('index.tpl')) // No cache available, do variable assignments here. ) $contents = get_database_contents(); $smarty->assign($contents);} $smarty->display('index.tpl'); )?> |
これは、まずこのキャッシュ ファイルが存在するかどうかを判断します。データベースへの直接リンクはありません。もしそうなら!表示を実行します。それは読み取りキャッシュです。誰もが上記の 2 つの例を見ました。これで、キャッシュについてよく理解できました。