如何在PHP中删除目录及其全部内容(文件和子目录)?
发布于 2010-07-27 03:11:49
rmdir
手册页面中的用户贡献部分包含了一个不错的实现:
function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (is_dir($dir. DIRECTORY_SEPARATOR .$object) && !is_link($dir."/".$object))
rrmdir($dir. DIRECTORY_SEPARATOR .$object);
else
unlink($dir. DIRECTORY_SEPARATOR .$object);
}
}
rmdir($dir);
}
}
发布于 2013-09-17 06:09:59
删除路径中的所有文件和文件夹。
function recurseRmdir($dir) {
$files = array_diff(scandir($dir), array('.','..'));
foreach ($files as $file) {
(is_dir("$dir/$file")) ? recurseRmdir("$dir/$file") : unlink("$dir/$file");
}
return rmdir($dir);
}
发布于 2010-07-27 03:35:13
对于*nix,您可以使用适用于rm -R
的shell_exec
或适用于Windows的DEL /S folder_name
。
https://stackoverflow.com/questions/3338123
复制相似问题