zoukankan      html  css  js  c++  java
  • php--------删除一个路径下的所有文件夹和文件

    php遍历一个文件夹内的所有文件和文件夹,并删除所有文件夹和子文件夹下的所有文件的代码,通过递归方式实现达到清空一个目录的效果,代码简单实用。

    也适合在thinkphp中清理缓存,在thinkphp中可以把下面代码写入./Application/Admin/Common/function.php文件中,再在控制器调用这个函数进行清理操作。

    用到的函数:

        scandir($path)    遍历一个文件夹所有文件并返回数组。
    
        unlink($filename)    删除文件。
    
        rmdir($path)    只删除空文件夹
        <?php
        //设置需要删除的文件夹
         $path = "./Application/Runtime/";
         //清空文件夹函数和清空文件夹后删除空文件夹函数的处理
         function deldir($path){
             //如果是目录则继续
             if(is_dir($path)){
                 //扫描一个文件夹内的所有文件夹和文件并返回数组
                $p = scandir($path);
                foreach($p as $val){
                    //排除目录中的.和..
                    if($val !="." && $val !=".."){
                        //如果是目录则递归子目录,继续操作
                        if(is_dir($path.$val)){
                            //子目录中操作删除文件夹和文件
                            deldir($path.$val.'/');
                            //目录清空后删除空文件夹
                            @rmdir($path.$val.'/');
                        }else{
                            //如果是文件直接删除
                            unlink($path.$val);
                        }
                    }
                }
            }
         }
        //调用函数,传入路径
        deldir($path);

       

  • 相关阅读:
    模板汇总 —— 杨式图表
    HDU 6634 网络流最小割模型 启发式合并
    网络流 从0开始学建图
    分层图 单调决策性DP
    模板汇总——笛卡尔树
    Bzoj 2127 happiness 最小割
    manacher --- 暂 旧版本
    Bzoj 3730 震波 动态点分治
    HDU
    Maven私服(Repository Manager)
  • 原文地址:https://www.cnblogs.com/zhangqie/p/8425099.html
Copyright © 2011-2022 走看看