~~~ /** * 循环删除目录和文件 * @param string $dir_name * @return bool */ function delete_dir_file($dir_name) { $result = false; if(is_dir($dir_name)){ if ($handle = opendir($dir_name)) { while (false !== ($item = readdir($handle))) { if ($item != '.' && $item != '..') { if (is_dir($dir_name . DS . $item)) { delete_dir_file($dir_name . DS . $item); } else { unlink($dir_name . DS . $item); } } } closedir($handle); if (rmdir($dir_name)) { $result = true; } } } return $result; } ~~~ ``` function destroyDir($dir){ $ds = DIRECTORY_SEPARATOR; $dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir; if(is_dir($dir) && $handle = opendir($dir)){ while($file = readdir($handle)){ if($file == '.' || $file == '..'){ continue; }elseif(is_dir($dir.$ds.$file)){ destroyDir($dir.$ds.$file); }else{ unlink($dir.$ds.$file); } } closedir($handle); rmdir($dir); } } ```