当我调用rrmdir()时,要删除目录及其所有子文件夹
发出警告:
“Warning:unlink(C:\congreaaws\tmp\mfpXeLhshG6puztQbamygpB1CqowIzL7ajS5Se8a\12323\076a12b3-9052-404a-9cd1-cfb62adf62c1\mod.pptx):
Resource temporarily unavailable in C:\congreaaws\conversion.PHP on
line 196”
function rrmdir($dir) {
// echo $dir; exit;
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (is_dir($dir . "/" . $object))
rrmdir($dir . "/" . $object);
else
unlink($dir . "/" . $object);
}
}
rmdir($dir);
}
}
同样的上面的功能是在centos工作,但在Windows中它不工作我使用IIS服务器运行PHP.
提前致谢
解决方法:
function delete_directory($dirPath){
$dir = $dirPath;
if(is_dir($dir)){
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FirsT
);
foreach($files as $file){
if ($file->isDir()){
rmdir($file->getRealPath());
}else{
unlink($file->getRealPath());
}
}
rmdir($dir);
}
}
如何使用
delete_directory($dir);