PHP清除緩存的幾種方法總結(jié)
PHP清除緩存的幾種方法總結(jié)
現(xiàn)在開(kāi)發(fā)的項(xiàng)目是用tp3.1版本的,在開(kāi)發(fā)過(guò)程中我們常常會(huì)遇到頁(yè)面緩存的問(wèn)題(特別是html的緩存);刷新后還是舊版的數(shù),再刷新下還是舊版數(shù)據(jù),慢慢的開(kāi)始懷疑人生了,哈哈;所以在開(kāi)發(fā)過(guò)程中我們又必要每次及時(shí)清除緩存。
清除緩存的方法大概有3種(都是實(shí)際經(jīng)歷總結(jié)):
第一:在項(xiàng)目的配置文件config.php里加入下面兩行代碼就能避免緩存問(wèn)題
'TMPL_CACHE_ON' => false,//禁止模板編譯緩存 'HTML_CACHE_ON' => false,//禁止靜態(tài)緩存
這兩行代碼在這里我就不解釋啦;
第二:TP框架的緩存目錄存放在文件夾public_html\App\Runtime下,每次開(kāi)發(fā)完成后手動(dòng)刪除里面的所有文件
(感覺(jué)有點(diǎn)暴力和愚蠢),但這種方法最蠢,測(cè)試和線上環(huán)境如果沒(méi)有權(quán)限就刪除不了了;
第三:我自己寫(xiě)的清除緩存類,我們可以在業(yè)務(wù)控制器同目錄下新建自己的"清除緩存"的類(核心思想就是利用TP框架自帶的緩存類來(lái)操作,TP框架的源代碼大家可以看下),通過(guò)url訪問(wèn)的方式來(lái)清楚緩存,
代碼如下:
// +----------------------------------------------------------------------
// | 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; //各種緩存數(shù)據(jù)存放目錄
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';
}
clear函數(shù)其實(shí)就是刪除緩存文件。

瀏覽器器地址欄輸入地址:
http://test.xxx.cn/Clear-clearcache?operate=fields //測(cè)試環(huán)境
http://www.xxx.cn/Clear-clearcache?operate=fields //正式環(huán)境
如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
關(guān)于PHP5.6+版本“No input file specified”問(wèn)題的解決
這篇文章主要介紹了關(guān)于PHP5.6+版本“No input file specified”問(wèn)題的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
基于ThinkPHP5框架使用QueryList爬取并存入mysql數(shù)據(jù)庫(kù)操作示例
這篇文章主要介紹了基于ThinkPHP5框架使用QueryList爬取并存入mysql數(shù)據(jù)庫(kù)操作,結(jié)合實(shí)例形式分析了thinkPHP5框架整合QueryList爬取數(shù)據(jù)存入mysql相關(guān)操作技巧及注意事項(xiàng),需要的朋友可以參考下2019-05-05
bindParam和bindValue的區(qū)別以及在Yii2中的使用詳解
下面小編就為大家分享一篇bindParam和bindValue的區(qū)別以及在Yii2中的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
關(guān)于Curl在Swoole協(xié)程中的解決方案詳析
這篇文章主要給大家介紹了關(guān)于Curl在Swoole協(xié)程中的解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Swoole具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
PHP生成自定義長(zhǎng)度隨機(jī)字符串的函數(shù)分享
這篇文章主要介紹了PHP生成自定義長(zhǎng)度隨機(jī)字符串的函數(shù)分享,需要的朋友可以參考下2014-05-05
VSCode+PHPstudy配置PHP開(kāi)發(fā)環(huán)境的步驟詳解
這篇文章主要介紹了VSCode+PHPstudy配置PHP開(kāi)發(fā)環(huán)境,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08

