网站地图    收藏   

主页 > 后端 > thinkphp教程 >

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

来源:自学PHP网    时间:2014-11-28 23:17 作者: 阅读:

[导读] 在我的WBlog中,有个清除缓存工能,所谓清除缓存就是删除程序运行时生成的缓存文件,这些文件全部都存在项目的Runtime文件夹里面,当时在做这个清除缓存的程序时使用项目函数库自定义...

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()方法:

  1. public function del(){       
  2.     $type=trim($_GET['type']);    
  3.     if(emptyempty($type)) $this->error('请选择缓存类型!');    
  4.             
  5.         switch($type) {    
  6.         case 1:// 全部清空                 
  7.              $path   =   WEB_PATH.'Runtime';    
  8.             break;    
  9.         case 2:// 文件缓存目录    
  10.             $path   =   WEB_PATH.'Runtime/Temp';    
  11.             break;    
  12.         case 3://  数据目录    
  13.             $path   =   WEB_PATH.'Runtime/Data/_fields';    
  14.              break;    
  15.         case 4://  模板文件缓存    
  16.              $path  =  WEB_PATH.'Runtime/Cache';    
  17.             break;    
  18.         case 5:// 清空全部后台缓存                 
  19.              $path   =   APP_PATH.'Runtime';    
  20.             break;    
  21.         case 6:// 后台文件缓存目录    
  22.             $path   =   APP_PATH.'Runtime/Temp';    
  23.             break;    
  24.         case 7://  后台数据目录    
  25.             $path   =   APP_PATH.'Runtime/Data/_fields';    
  26.              break;    
  27.         case 8://  模板文件缓存    
  28.              $path  =  APP_PATH.'Runtime/Cache';    
  29.             break;    
  30.         }    
  31.            
  32.          import("@.ORG.Dir");//加载Dir.class.php类(我放在后台项目里)    
  33.             
  34.     if(!Dir::isEmpty($path)){//静态调用Dir.class.php的isEmpty()    
  35.      Dir::del($path);    
  36.              
  37.      $this->success();    
  38.      }else{     
  39.     $this->error('已清空!');    
  40.     }    

说明:

import("@.ORG.Dir") --加载Dir.class.php类(我放在后台项目里)

Dir::isEmpty($path)--静态调用Dir.class.php的isEmpty()

Dir::del($path);--静态调用Dir.class.php的del()方法.

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

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论