加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

用PHP实现遍历删除目录及此目录下存放的所有文件

发布时间:2022-09-07 12:00:24 所属栏目:PHP教程 来源:互联网
导读:本篇文章主要讲述的是使用PHP遍历一个目录下的所有目录及文件,并删除该目录及其目录下的所有子目录和文件,本次代码通过递归的方式来实现,感兴趣的朋友来了解一下吧。 用到的函数: scandir($path) 遍历一个目录下所有文件并返回数组。 unlink($filename)
   本篇文章主要讲述的是使用PHP遍历一个目录下的所有目录及文件,并删除该目录及其目录下的所有子目录和文件,本次代码通过递归的方式来实现,感兴趣的朋友来了解一下吧。
 
  用到的函数:
 
  scandir($path) 遍历一个目录下所有文件并返回数组。
 
  unlink($filename) 删除文件。
 
  rmdir($path) 只删除空文件夹。
 
  PHP代码:
 
  /**
   
   * 删除当前目录及其目录下的所有目录和文件
   
   * @param string $path 待删除的目录
   
   * @note  $path路径结尾不要有斜杠/(例如:正确[$path='./static/image'],错误[$path='./static/image/'])
   
   */
   
  function deleteDir($path) {
   
    
   
      if (is_dir($path)) {
   
          //扫描一个目录内的所有目录和文件并返回数组
   
          $dirs = scandir($path);
   
    
   
          foreach ($dirs as $dir) {
   
              //排除目录中的当前目录(.)和上一级目录(..)
   
              if ($dir != '.' && $dir != '..') {
   
                  //如果是目录则递归子目录,继续操作
   
                  $sonDir = $path.'/'.$dir;
   
                  if (is_dir($sonDir)) {
   
                      //递归删除
   
                      deleteDir($sonDir);
   
    
   
                      //目录内的子目录和文件删除后删除空目录
   
                      @rmdir($sonDir);
   
                  } else {
   
    
   
                      //如果是文件直接删除
   
                      @unlink($sonDir);
   
                  }
   
              }
  //phpfensi.com
          }
   
          @rmdir($path);
   
      }
   
  } 

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读