thinkphp、onethink清除缓存插件

onethink即使开启了调试模式,但缓存有时候还是清理不掉,所以弄了个onethink后台清理缓存的插件,非常简单就实现了后台手动清理缓存功能,有需要自行下载研究,没啥难度。

应用介绍

onethink缓存插件开发,后台扩展新建插件,插件名称:Cache

插件名称:清理缓存

插件作者:ischambers

插件版本:0.1

插件控制器:CacheController.class.php

public $info = array(
    'name'=>'Cache',
    'title'=>'缓存插件',
    'description'=>'缓存清理插件,管理员可以在前端后端进行缓存清理。',
    'status'=>1,
    'author'=>'ischambers',
    'version'=>'0.1'
);
//实现后台Cache后台钩子方法
public function cacheAdmin(){
    $this->display('cache');
}
//实现前台Cache钩子方法
public function cacheHome(){
    $this->display('cache');
}

实现清理缓存文件控制器方法:

/**
 * 删除目录及目录下所有文件或删除指定文件
 * @param str $path   待删除目录路径
 * @param int $delDir 是否删除目录,1或true删除目录,0或false则只删除文件保留目录(包含子目录)
 * @return bool 返回删除状态
 */
public function delDirAndFile($path = './Application/Runtime/', $delDir = false) {
    $handle = opendir($path);
    if ($handle) {
        while (false !== ( $item = readdir($handle) )) {
            if ($item != "." && $item != "..")
                is_dir("$path/$item") ? $this->delDirAndFile("$path/$item", $delDir) : unlink("$path/$item");
        }
        closedir($handle);
        if ($delDir)
            rmdir($path);
            $this->ajaxReturn(array('status'=>1, 'info'=>'缓存清理成功!'));          
    }else {
        if (file_exists($path)) {
            return unlink($path);
        } else {
            $this->ajaxReturn(array('status'=>1, 'info'=>'缓存清理失败!'));
        }
    }
 }
点赞(4) 打赏

立即下载

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部