专注于WEB技术的IT博客

thinkphp文件处理类Dir.class.php的应用

时间:2012-11-14分类: wblog浏览:6288
分享到:

     在我的WBlog中,有个清除缓存工能,所谓清除缓存就是删除程序运行时生成的缓存文件,这些文件全部都存在项目的Runtime文件夹里面。当时在做这个清除缓存的程序时使用项目函数库自定义的一个函数来删除缓存文件,只能整个地删除Runtime,太粗糙了,我觉得有必要作一下细分删除。其实thinkphp扩展类库有个不错的文件处理类Dir.class.php。Dir.class.php类不是每个thinkphp版本都有,如果你所下载的版本没有,可以从其它版本去找。现在来说一下Dir.class.php的应用。


        Dir.class.php是一个文件处理类,用它可以:
        1、取得目录下面的文件信息
        2、删除目录或文件


 由于我要完善WBlog缓存清除功能,这里我只写了上面的第2个功能,至于第1个功能我将做模板文个修改功能时再写。下面是我在清除缓存的控制器定义的一个del()方法:

public function del(){       
        $type=trim($_GET['type']);    
        if(empty($type)) $this->error('请选择缓存类型!');    
                
            switch($type) {    
            case 1:// 全部清空                 
                 $path   =   WEB_PATH.'Runtime';    
                break;    
            case 2:// 文件缓存目录    
                $path   =   WEB_PATH.'Runtime/Temp';    
                break;    
            case 3://  数据目录    
                $path   =   WEB_PATH.'Runtime/Data/_fields';    
                 break;    
            case 4://  模板文件缓存    
                 $path  =  WEB_PATH.'Runtime/Cache';    
                break;    
            case 5:// 清空全部后台缓存                 
                 $path   =   APP_PATH.'Runtime';    
                break;    
            case 6:// 后台文件缓存目录    
                $path   =   APP_PATH.'Runtime/Temp';    
                break;    
            case 7://  后台数据目录    
                $path   =   APP_PATH.'Runtime/Data/_fields';    
                 break;    
            case 8://  模板文件缓存    
                 $path  =  APP_PATH.'Runtime/Cache';    
                break;    
            }    
               
             import("@.ORG.Dir");//加载Dir.class.php类(我放在后台项目里)    
                
        if(!Dir::isEmpty($path)){//静态调用Dir.class.php的isEmpty()    
         Dir::del($path);    
                 
         $this->success();    
         }else{     
        $this->error('已清空!');    
        }    
    }

        说明:
            import("@.ORG.Dir") --加载Dir.class.php类(我放在后台项目里)
            Dir::isEmpty($path)--静态调用Dir.class.php的isEmpty()
            Dir::del($path);--静态调用Dir.class.php的del()方法。
            上面在使用类时,我使用了静态调用方法,这省去了实例化的麻烦。详细请下载WBlog博客程序看吧。*^_^*

         

        

猜你喜欢
ThinkPHP自定义模板标签详解
wblog3.1.3_2升级说明
ThinkPHP普通分组下Widget的使用
如何让ThinkPHP的模板引擎达到最佳效率
WBlog博客前台独立栏目页的实现方法
WB3.1.2_2版本使用说明
封装ThinkPHP的一个文件上传方法
ThinkPHP3.1.2整合UCenter详解(四)
ThinkPHP3.1.2整合UCenter详解(三)
ThinkPHP3.1.2整合UCenter详解(二)
标签 : thinkphp
除非注明,本文首发网志博客,欢迎转载!转载请注明本文地址:http://w3note.com/web/45.html,谢谢。
  • 评论
  • 赞助本站