頂部導航開始 -->

thinkphp清除緩存方法

thinkphp運行久了,會產生很多緩存文件,占用服務器資源,本文介紹清除緩存文件的方法。

具體實施的思路是:

1、在入口文件或者配置文件中,定義緩存文件路徑(也可以直接在方法中定義好路徑)

2、在Action中,使用快捷方法C方法將緩存路徑引入Action中(在方法中直接定義則不需要使用C方法)

3、在網站后臺模板頁面,添加清除緩存按鈕,鏈接指向Action類中的清除緩存方法

4、在該清除方法中定義刪除函數或者引入外部刪除緩存函數,執行刪除緩存功能


thinkphp的緩存文件分為前后臺,刪除時需要分別定義前臺刪除方法和后臺刪除方法。

本文參考了網上其他人的方法,做了一下總結。具體方法是單獨定義了一個緩存管理類文件,然后在類中定義兩個方法,分別是前臺刪除方法和后臺刪除方法,以及緩存文件刪除方法。


自學php博客


自學php博客

自學php博客


代碼是:

//清空緩存方法

public function rmdirr($dirname) {

if (!file_exists($dirname)) {

return false;

}

if (is_file($dirname) || is_link($dirname)) {

return unlink($dirname);

}

$dir = dir($dirname);

if($dir){

while (false !== $entry = $dir->read()) {

if ($entry == '.' || $entry == '..') {

continue;

}

//遞歸

$this->rmdirr($dirname . DIRECTORY_SEPARATOR . $entry);

}

}

$dir->close();

return rmdir($dirname);

}

//前臺頁面

public function home(){

//清文件緩存

$dirs = array('Home/Runtime/Cache');

@mkdir('Home/Runtime/Cache',0777,true);

//清理緩存

foreach($dirs as $value) {

$this->rmdirr($value);

}

//echo '<div >系統緩存清除成功!</div>';  

$res=true;

echo json_encode($res);

}

//后臺頁面

public function admin(){

//清文件緩存

$dirs = array('MAdmin/Runtime/Cache');

@mkdir('MAdmin/Runtime/Cache',0777,true);

//清理緩存

foreach($dirs as $value) {

$this->rmdirr($value);

}

//echo '<div >系統緩存清除成功!</div>'; 

$res=true;

echo json_encode($res);

}

自學php博客
請先登陸后發表評論
  • 最新評論
  • 總共0條評論
  • ? 2014-2016 zixuephp.cn 版權所有
  • ICP證:皖ICP備16012107號
  • 聯系郵箱:[email protected]
  • 交流請加微信:weibobf2899 或掃下方二維碼
双大床红利扑克1手APP