如何删除目录rmdir
?
该目录为空,但我无法删除/删除它。
$root_dir = "C:/xampp/htdocs/";
$dir = $root_dir.'tmp/';
rmdir($dir);
如何删除目录rmdir
?
该目录为空,但我无法删除/删除它。
$root_dir = "C:/xampp/htdocs/";
$dir = $root_dir.'tmp/';
rmdir($dir);
让我惊呆了一阵子的重要考虑因素:确保您没有chdir()
进入您要删除的目录,如果您这样做chdir()
了,请先退出该目录。您不能删除 Windows 上的当前工作目录。
function removedir($dirname)
{
if (is_dir($dirname))
$dir_handle = opendir($dirname);
if (!$dir_handle)
return false;
while($file = readdir($dir_handle)) {
if ($file != "." && $file != "..") {
if (!is_dir($dirname."/".$file))
unlink($dirname."/".$file);
else
{
$a=$dirname.'/'.$file;
removedir($a);
}
}
}
closedir($dir_handle);
rmdir($dirname);
return true;
}
如果权限不是问题,则 tmp 目录中可能包含文件。rmdir 只删除空目录。使用此功能删除目录+所有文件:
function deleteDirectory($dir) {
if (!file_exists($dir)) return true;
if (!is_dir($dir)) return unlink($dir);
foreach (scandir($dir) as $item) {
if ($item == '.' || $item == '..') continue;
if (!deleteDirectory($dir.DIRECTORY_SEPARATOR.$item)) return false;
}
return rmdir($dir);
}
检查http://us3.php.net/manual/en/function.rmdir.php#91797以供参考:)