Heim >Backend-Entwicklung >PHP-Tutorial >php递归复制文件和目录,该如何解决

php递归复制文件和目录,该如何解决

WBOY
WBOYOriginal
2016-06-13 10:10:13763Durchsuche

php递归复制文件和目录
 function del($path){
$handle = opendir($path);
readdir($handle);
readdir($handle); while(false !== ($file = readdir($handle))){
$file = $path."/".$file;

if(is_dir($file)){
del($file);
}else{
if(unlink($file)){
echo "文件".$file."成功"."\r\n";
}else{
echo "文件".$file."失败"."\r\n";
}
}
}
closedir($handle);
if(rmdir($path)){
echo "目录".$path."删除成功"."\r\n";
}else{
echo "目录".$path."删除失败"."\r\n";
}

}

del('d:/123');
 
?>

为什么用两次readdir($handle);?求解,详细点,用一次为什么出错?



------解决方案--------------------
一个目录下有两个特殊目录 . 和 .. ,代表本目录和上级目录,这两个readdir($handle)就是把这个两特殊目录读取后不用来跳过,这样才能正确操作指定目录下的文件和子目录的。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:们,这为啥不能搜呢Nächster Artikel:exec 返回127,该如何解决