ホームページ >バックエンド開発 >PHPチュートリアル >PHPでキャッシュをクリアする方法まとめ
この記事は、PHP でキャッシュをクリアするいくつかの方法についてまとめた関連情報を主に紹介します。この記事を通じて、必要な友人がキャッシュをクリアする方法をマスターできることを願っています。 PHP のキャッシュのクリアについて
現在開発中のプロジェクトは tp3.1 バージョンを使用していますが、開発プロセス中に、ページのキャッシュ (特に HTML のキャッシュ) で問題が発生し、更新後もデータが古いままになります。更新してもデータは古いバージョンのままで、徐々に自分の人生を疑い始めました (笑)。そのため、開発プロセスでは毎回キャッシュをクリアする必要があります。
キャッシュをクリアする方法は 3 つほどあります (すべて実際の経験からまとめたものです):
最初: キャッシュの問題を回避するために、次の 2 行のコードをプロジェクトの構成ファイル config.php に追加します
'TMPL_CACHE_ON' => false,//禁止模板编译缓存 'HTML_CACHE_ON' => false,//禁止静态缓存
ここではこれら 2 行のコードについては説明しません。
2 番目: TP フレームワークのキャッシュ ディレクトリは public_htmlAppRuntime フォルダーに保存され、その中のすべてのファイルは開発が完了するたびに手動で削除されます
(
3 番目: 独自のキャッシュクリアクラスを同じディレクトリに作成できます。ビジネス コントローラー。 (核となるアイデアは、TP フレームワークに付属するキャッシュ クラスを使用して動作することです。TP フレームワークのソース コードを参照してください)、URL アクセスを通じてキャッシュをクリアします。コードは次のとおりです:
// +---------------------------------------------------------------------- // | Copyright (c) 2007-2009 // +---------------------------------------------------------------------- // $Id: ClearAction.class.php 668 2016-05-03 11:43:12Z chenhaibo $ /** +------------------------------------------------------------------------------ * 清除缓存 +------------------------------------------------------------------------------ * @author haibo <chenhaibo0806@163.com> * @version $Id: ClearAction.class.php 668 2016-05-03 11:43:12Z chenhaibo $ +------------------------------------------------------------------------------ */ class ClearAction extends Action{ /** +---------------------------------------------------------- * 清除缓存 +---------------------------------------------------------- * @access public +---------------------------------------------------------- * @return void +---------------------------------------------------------- */ public function clearcache() { $_token = isset($_GET['token']) ? trim($_GET['token']) : ''; $_operate = isset($_GET['operate']) ? trim($_GET['operate']) : ''; $_option = array(); if($_operate == 'runtime') $_option['temp'] = RUNTIME_PATH; //各种缓存数据存放目录 if($_operate == 'cache') $_option['temp'] = CACHE_PATH; if($_operate == 'data') $_option['temp'] = DATA_PATH; if($_operate == 'fields') $_option['temp'] = DATA_PATH."/_fields"; import('Think.Util.Cache.CacheFile'); $CacheFile = new CacheFile($_option); $CacheFile->clear(); echo 'success'; }
http://test.xxx.cn/Clear-clearcache?operate=fields //テスト環境
以上がPHPでキャッシュをクリアする方法まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。