PHP如何删除一个路径下的所有文件夹和文件?

 4571

PHP如何删除一个路径下的所有文件夹和文件?下面本篇文章给大家介绍一下PHP删除一个路径下的所有文件夹和文件的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。


用到的函数:

scandir($path) 遍历一个文件夹所有文件并返回数组。

unlink($filename) 删除文件。

rmdir($path) 只删除空文件夹

代码:

删除单个文件

  1. $file = "./aa/aas.txt";
  2. if (!unlink($file)) {
  3.     echo ("Error deleting $file");
  4. } else {
  5.     echo ("Deleted $file");
  6. }

删除一个路径下的所有文件夹和文件的方法:1

  1. $path = "./aa";
  2. function deleteDir($dir)
  3. {
  4.     if (!$handle = @opendir($dir)) {
  5.         return false;
  6.     }
  7.     while (false !== ($file = readdir($handle))) {
  8.         if ($file !== "." && $file !== "..") {       //排除当前目录与父级目录
  9.             $file = $dir . '/' . $file;
  10.             if (is_dir($file)) {
  11.                 deleteDir($file);
  12.             } else {
  13.                 @unlink($file);
  14.             }
  15.         }
  16.     }
  17.     @rmdir($dir);
  18. }
  19. deleteDir($path);

删除一个路径下的所有文件夹和文件的方法:2

  1. //设置需要删除的文件夹
  2. $path = "./aa";
  3. //清空文件夹函数和清空文件夹后删除空文件夹函数的处理
  4. function deldir($path){
  5.     //如果是目录则继续
  6.     if(is_dir($path)){
  7.     //扫描一个文件夹内的所有文件夹和文件并返回数组
  8.         $p = scandir($path);
  9.         foreach($p as $val){
  10.             //排除目录中的.和..
  11.             if($val !="." && $val !=".."){
  12.             //如果是目录则递归子目录,继续操作
  13.                 if(is_dir($path.'/'.$val)){
  14.                     //子目录中操作删除文件夹和文件
  15.                     deldir($path.'/'.$val);
  16.                     //目录清空后删除空文件夹
  17.                     @rmdir($path.'/'.$val);
  18.                 }else{
  19.                     //如果是文件直接删除
  20.                     unlink($path.'/'.$val);
  21.                 }
  22.             }
  23.         }
  24.     }
  25. }
  26.  //调用函数,传入路径
  27.  deldir($path);

以上就是PHP如何删除一个路径下的所有文件夹和文件的详细内容。


本文网址:https://www.zztuku.com/detail-7794.html
站长图库 - PHP如何删除一个路径下的所有文件夹和文件?
申明:如有侵犯,请 联系我们 删除。

评论(0)条

您还没有登录,请 登录 后发表评论!

提示:请勿发布广告垃圾评论,否则封号处理!!

    编辑推荐