遞迴刪除目錄(程式碼)
阿新 • • 發佈:2019-02-15
<?php
/*遞迴刪除目錄*/
/**
* [deldir 遞迴刪除目錄]
* @param string $dir [要刪除的目錄]
* @return 刪除成功返回true 失敗返回false
*/
function deldir($dir)
{
if (!is_dir($dir)) {
echo '無效目錄';
return false;
}
$handle = opendir($dir);
//遞迴刪除目錄
while (false !== ($filename = readdir($handle))) {
//ERROR級別的提示: 一定要排除.和..目錄
if ($filename == '.' || $filename == '..') {
continue;
}
//拼接路徑
$path = rtrim($dir,'/').'/'.$filename;
//判斷
if (is_dir($path )) {
//如果是目錄,就遞迴呼叫進去
deldir($path);
}
if(is_file($path)){
//如果是檔案,就直接刪除
unlink($path);
}
}
closedir($handle);
//刪除空目錄
rmdir($dir);
return true;
}
//呼叫函式 刪除del目錄
deldir('./del/' );