thinkphp文件处理类Dir.class.php的用法分析

所属分类: 网络编程 / PHP编程 阅读数: 1570
收藏 0 赞 0 分享

本文实例分析了thinkphp文件处理类Dir.class.php的用法。分享给大家供大家参考。具体分析如下:

在我的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(emptyempty($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()方法.

上面在使用类时,我使用了静态调用方法,这省去了实例化的麻烦.

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

更多精彩内容其他人还在看

php实现的美国50个州选择列表实例

这篇文章主要介绍了php实现的美国50个州选择列表实例,可实现让当前州为选中状态的功能,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用递归生成文章树

写递归函数,可考虑缓存,定义一些静态变量来存上一次运行的结果,多程序运行效率很有帮助.大概步骤如下:首先到数据库取数据,放到一个数组,然后把数据转化为一个树型状的数组,最后把这个树型状的数组转为html代码。下面我们来看个实例
收藏 0 赞 0 分享

wordpress安装过程中遇到中文乱码的处理方法

这篇文章主要介绍了wordpress安装过程中遇到中文乱码的处理方法,是个人项目中遇到的一个奇葩事件,经过一番研究,终于解决,这里记录下来分享给大家,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

php的crc32函数使用时需要注意的问题(不然就是坑)

这篇文章主要介绍了php的crc32函数使用时需要注意的问题(不然就是坑) ,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP中把对象转换为关联数组代码分享

这篇文章主要介绍了PHP中把对象转换为关联数组代码分享,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

php检测url是否存在的方法

这篇文章主要介绍了php检测url是否存在的方法,涉及php中get_headers及正则匹配的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

php获取twitter最新消息的方法

这篇文章主要介绍了php获取twitter最新消息的方法,涉及php操作curl及正则替换的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

php遍历CSV类实例

这篇文章主要介绍了php遍历CSV类,实例分析了php针对csv文件的打开、读取及遍历的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用mysqldump命令导出数据库

最近用php写一个数据备份的功能。做法是使用php的system函数执行mysqldump命令,进行备份,这里分享给大家,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

PHP用反撇号执行外部命令

shell_exec() 命令行实际上仅是反撇号 ` 操作符的变体,如果您编写过 shell 或 Perl 脚本,您就知道可以在反撇号操作符内部捕捉其他命令的输出。
收藏 0 赞 0 分享
查看更多