PHP递归删除多级目录

php删除文件夹需要结合三个函数:

  • glob:用于遍历文件
  • unlink:删除文件
  • rmdir:删除空文件夹
<?php 
public static function recursiveDelete($dir) { 
    $dir = rtrim($dir,'/'); 
   $files = glob($dir.'/*'); 
  foreach ($files as $file) { 
   (is_dir("$dir/$file")) ? recursiveDelete("$dir/$file") : unlink("$dir/$file"); 
  } 
  return rmdir($dir); 
 } 
?>

使用glob("/temp/*")是不能遍历到以点号"."开头的隐藏的文件,如果需要对隐藏文件做处理,glob修改如下:

$files = glob($dir.'/{,.}*', GLOB_BRACE);

版权声明:著作权归作者所有。

相关推荐

Python安全创建目录的方法

在介绍Python安全创建目录之前,先举一个不安全创建目录的方式:if not os.path.exists(directory):     os.makedirs(directory) 在例子里,先判断目录是否存在,然后创建目录。这种方式是不安全的,它会导致竞争条件。在os.path.exists()和os.makedirs()之间的时

PHP7设置和删除cookie

PHP设置和删除cookie都是使用setcookie函数:bool setcookie ( string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bo

Docker删除多个镜像image

Docker使用命令rmi删除镜像。docker删除单一镜像docker rmi image_name:version/image-id docker删除所有镜像docker rmi $(docker images -qf "dangling=true") docker删除除了特定的镜像外的所有镜像可以使用g

Git删除本地和远程分支

Git删除本地分支有两种方法删除本地分支$ git branch -d <branch_name> $ git branch -D <branch_name> -d:--delete的简写-D:--delete --force的简写Git删除远程分支Git v2.8.0$&n

Git添加空目录到仓库

Git是不允许添加空目录到仓库的。一般做法是在空目录里添加一个文件。通常会添加的文件如下:1、添加.gitignore,内容如下:# Ignore everything in this directory * # Except this file !.gitignore 这目的不让git忽略此文件2、添加.gitkee