2011-06-29 144 views
3

如何刪除指定目錄內的所有子目錄?刪除PHP中指定目錄內的所有子目錄?

目錄是c:/files/

,我想刪除自己的(例如)中的所有子目錄:

c:/files/something/something/something/ 

c:/files/another-something/ 

那麼到底C:/文件/只保留(是空的,沒有子目錄)。

rmdir()只刪除給定路徑中的最後一個目錄...所以我猜我不得不循環? :/

所有幫助表示讚賞。

(PS:子目錄不包含任何文件)

回答

4

PHP manual entry for rmdir摘自:

function rrmdir($dir) { 
    if (is_dir($dir)) { 
    $objects = scandir($dir); 
    foreach ($objects as $object) { 
     if ($object != "." && $object != "..") { 
     if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object); 
     } 
    } 
    reset($objects); 
    rmdir($dir); 
    } 
} 

此使用遞歸解決問題。

-1

我認爲你正在尋找RMDIR /S

例如,下面的命令將刪除目錄C:\blah和其中包含的所有子目錄和文件。沒有提示將被顯示。

RMDIR c:\blah /s /q

相關問題