昨日、ディレクトリを削除する方法を尋ねる投稿を見ました。以前は常に可能でしたが、昨日、下位レベルのファイルを削除してからディレクトリを削除しただけであることがわかりました。それ以上のレベルになると、問題が発生します。
私のこれは一時的にしか使用できません。ディレクトリが 10 レベルを超えていない場合は問題ないはずですが、再帰については詳しくないので
deltree($path);rmdir($) しかできません。 path) このディレクトリを削除するには、deltree($path); で直接このディレクトリを削除できますか? ?
function deltree($pathdir)
{
echo $pathdir;//デバッグ時に使用します
if(is_empty_dir($pathdir))//空の場合
{
rmdir($pathdir);//直接削除
} s else
{// それ以外の場合は、.. を除いてこのディレクトリを読み取ります
$ d = dir ($ Pathdir);
about is_file($pathdir.'/'.$a) && ($a!= '。')&&($ a!= '..')){linnink($ pathdir。 '/'。$ a);}
//ファイルである場合、それを直接削除します。 '/'.$a);
}
; }
}
function is_empty_dir($ pathdir)
{// ディレクトリが空かどうかを判断します。私のやり方はとても良くないですか? . と .. 以外に空でないものがあるかどうかを確認するには、PHP には
関数が用意されていますか?
$d=opendir($pathdir);
$i=0;
while($a=readdir($d))
{
$i++;
}
closedir($d);
if($i>2 ){return false;}
else return true;
}