多くのサブフォルダーとファイル (>1000) を含む大きなディレクトリを削除しようとしています。この目的のために構築された多くの関数があり、私は以下を使用します:
function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (filetype($dir . "/" . $object) == "dir"){
log_message(201,array(),'Try to delete folder: '.$dir.'/'.$object);
rrmdir($dir . "/" . $object);
}else{
log_message(201,array(),'Try to delete FILE: '.$dir.'/'.$object);
unlink($dir . "/" . $object);
}
}
}
reset($objects);
rmdir($dir);
}
}
問題は、多くのファイルが取り残されることです。これは通常の動作ですか、私のコードに何か問題がありますか? これが通常の動作である場合、どうすればこの問題を回避できますか?
前もって感謝します。