search
Homephp教程php手册thinkphp文件处理类Dir.class.php的用法分析,

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

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

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor