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

 更新时间:2014年12月08日 14:52:06   投稿:shichen2014  
这篇文章主要介绍了thinkphp文件处理类Dir.class.php的用法,以实例形式分析了基于文件处理类Dir.class.php的自定义函数del的使用,是非常实用的技巧,需要的朋友可以参考下

本文实例分析了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程序设计有所帮助。

相关文章

  • laravel 之 Eloquent 模型修改器和序列化示例

    laravel 之 Eloquent 模型修改器和序列化示例

    今天小编就为大家分享一篇laravel 之 Eloquent 模型修改器和序列化示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • PHP中SSO Cookie登录分析和实现

    PHP中SSO Cookie登录分析和实现

    单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证
    2015-11-11
  • 解决PHP使用CURL发送GET请求时传递参数的问题

    解决PHP使用CURL发送GET请求时传递参数的问题

    今天小编就为大家分享一篇解决PHP使用CURL发送GET请求时传递参数的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • ThinkPHP基本的增删查改操作实例教程

    ThinkPHP基本的增删查改操作实例教程

    这篇文章主要介绍了ThinkPHP基本的增删查改操作,在ThinkPHP程序设计中有着非常广泛的应用,需要的朋友可以参考下
    2014-08-08
  • 基于Zend的Config机制的应用分析

    基于Zend的Config机制的应用分析

    本篇文章介绍了,基于Zend的Config机制的应用分析。需要的朋友参考下
    2013-05-05
  • php 文件上传实例代码

    php 文件上传实例代码

    php 文件上传实例代码,php中上传文件就比asp的容易多了,代码量比较少
    2012-04-04
  • PHP 修改SESSION的生存时间案例详解

    PHP 修改SESSION的生存时间案例详解

    这篇文章主要介绍了PHP 修改SESSION的生存时间案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • PHP 实例化类的一点摘记

    PHP 实例化类的一点摘记

    最近在编写 Grace PHP5 Framework 中,我得到很多类的实例化的心得。Grace PHP5 Framework 是一个完全基于 MVC 架构的框架,具有良好的扩展性。它对于类的调用可以说非常的灵活。
    2008-03-03
  • nohup在后台常驻运行php脚本

    nohup在后台常驻运行php脚本

    linux中跑一个程序,如果我们退出终端,或者网络不好连接中断,那么程序就会被中止,而这个情况肯定不是我们想看到的,要让PHP程序在Linux后台执行,可以使用nohup命令配合&符号,nohup命令可以使进程在用户注销后继续运行,&可以将进程放到后台执行
    2024-03-03
  • PHP strtr() 函数使用说明

    PHP strtr() 函数使用说明

    转换字符串中特定的字符。
    2008-11-11

最新评论