Maison >développement back-end >tutoriel php >Résumé des méthodes pour vider le cache en PHP
Cet article présente principalement les informations pertinentes résumées par plusieurs méthodes de vidage du cache en PHP. J'espère qu'à travers cet article, tout le monde pourra maîtriser les méthodes de vidage du cache. Les amis dans le besoin pourront se référer à
. PHP Clear Cache Résumé de plusieurs méthodes
Le projet que nous développons utilise désormais la version tp3.1 Lors du processus de développement, nous rencontrons souvent des problèmes de mise en cache des pages (notamment la mise en cache html après) ; rafraîchissant, le problème existe toujours L'ancienne version des données sera toujours l'ancienne version des données après l'actualisation, et j'ai lentement commencé à douter de ma vie, haha donc pendant le processus de développement, nous devons vider le cache à temps chaque temps.
Il existe environ 3 façons de vider le cache (toutes résumées à partir d'une expérience réelle) :
Première : ajoutez les deux lignes suivantes au fichier de configuration du projet config.php le code peut éviter les problèmes de mise en cache
'TMPL_CACHE_ON' => false,//禁止模板编译缓存 'HTML_CACHE_ON' => false,//禁止静态缓存
Je n'expliquerai pas ces deux lignes de code ici
Deuxième : Le Le répertoire de cache du framework TP est stocké dans le dossier public_htmlAppRuntime. Une fois chaque développement terminé, tous les fichiers qu'il contient sont supprimés manuellement
(cela semble un peu violent et stupide), mais cette méthode est la plus stupide s'il n'y en a pas. autorisation pour les environnements de test et en ligne, il ne peut pas être supprimé ;
Troisième : j'ai écrit ma propre classe de cache clair » dans le même répertoire que le contrôleur métier ( l'idée principale est d'utiliser le framework TP. Utilisez la classe de cache intégrée pour fonctionner. Vous pouvez voir le code source du framework TP ci-dessous). Pour vider le cache via l'accès à l'URL, le code
est le suivant. suit :
// +---------------------------------------------------------------------- // | 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'; }
La fonction clear supprime en fait les fichiers de cache.
Entrez l'adresse dans la barre d'adresse du navigateur :
http://test.xxx.cn/Clear-clearcache? opera =fields //Environnement de test
http://www.xxx.cn/Clear-clearcache?operate=fields //Environnement formel
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!