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


Posted in PHP onDecember 08, 2014

本文实例分析了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 相关文章推荐
网友原创的PHP模板类代码
Sep 07 PHP
php调用mysql数据 dbclass类
May 07 PHP
一漂亮的PHP图片验证码实例
Mar 21 PHP
php面向对象中static静态属性和静态方法的调用
Feb 08 PHP
php获取YouTube视频信息的方法
Feb 11 PHP
php中memcache 基本操作实例
May 17 PHP
配置eAccelerator和XCache扩展来加速PHP程序的执行
Dec 22 PHP
详解WordPress开发中get_header()获取头部函数的用法
Jan 08 PHP
在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程
Feb 23 PHP
PHP将身份证正反面两张照片合成一张图片的代码
Apr 08 PHP
PHP观察者模式原理与简单实现方法示例
Aug 25 PHP
php之可变函数的实例详解
Sep 13 PHP
php中adodbzip类实例
Dec 08 #PHP
php中Array2xml类实现数组转化成XML实例
Dec 08 #PHP
PHP内存缓存Memcached类实例
Dec 08 #PHP
thinkphp实现上一篇与下一篇的方法
Dec 08 #PHP
PHP模块memcached使用指南
Dec 08 #PHP
PHP原生函数一定好吗?
Dec 08 #PHP
thinkphp中ajax与php响应过程详解
Dec 08 #PHP
You might like
备份mysql数据库的php代码(一个表一个文件)
2010/05/28 PHP
解析PHP中如何将数组变量写入文件
2013/06/06 PHP
正确的PHP匹配UTF-8中文的正则表达式
2015/05/13 PHP
Yii2.0中使用js异步删除示例
2017/03/10 PHP
快速解决PHP调用Word组件DCOM权限的问题
2017/12/27 PHP
PHP自动识别当前使用移动终端
2018/05/21 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
2021/03/09 PHP
Javascript实例教程(19) 使用HoTMetal(5)
2006/12/23 Javascript
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
jquery ui 1.7 ui.tabs 动态添加与关闭(按钮关闭+双击关闭)
2010/04/01 Javascript
jquery.boxy插件的iframe扩展代码
2010/07/02 Javascript
js获取光标位置和设置文本框光标位置示例代码
2014/01/09 Javascript
使用JavaScript 实现的人脸检测
2015/03/24 Javascript
Javascript中的数据类型之旅
2015/10/18 Javascript
Bootstrap modal使用及点击外部不消失的解决方法
2016/12/13 Javascript
JS作用域深度解析
2016/12/29 Javascript
JavaScript输出所选择起始与结束日期的方法
2017/07/12 Javascript
NodeJs form-data格式传输文件的方法
2017/12/13 NodeJs
详解vue项目中如何引入全局sass/less变量、function、mixin
2018/06/02 Javascript
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
2020/03/13 Javascript
[01:27]DOTA2电竞之夜 今夜共饮庆功酒
2014/08/02 DOTA
[48:05]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VGJ.T vs VP
2018/03/31 DOTA
给Python IDLE加上自动补全和历史功能
2014/11/30 Python
Python探索之SocketServer详解
2017/10/28 Python
python email smtplib模块发送邮件代码实例
2018/04/26 Python
Python并发之多进程的方法实例代码
2018/08/15 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
Python 调用 zabbix api的方法示例
2019/01/06 Python
Django 全局的static和templates的使用详解
2019/07/19 Python
TensorBoard 计算图的查看方式
2020/02/15 Python
pymysql 插入数据 转义处理方式
2020/03/02 Python
Python将二维列表list的数据输出(TXT,Excel)
2020/04/23 Python
波兰在线杂货店:Polski Koszyk
2019/11/02 全球购物
中学家长会邀请函
2014/01/17 职场文书
2015年校务公开工作总结
2015/05/26 职场文书