簡體   English   中英

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

[英]delete all subdirectories within a specificied directory in PHP?

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

目錄為c:/files/

我想刪除它們(示例)中的所有子目錄:

c:/files/something/something/something/

c:/files/another-something/

所以最后 c:/files/ 仍然存在(為空且沒有子目錄)。

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

所有幫助表示贊賞。

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

取自rmdir 的 PHP 手冊條目

 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); 
   } 
 }

這使用遞歸解決了這個問題。

我認為您正在尋找RMDIR /S

例如,以下命令將刪除目錄C:\blah以及其中包含的所有子目錄和文件。 不會顯示任何提示。

RMDIR c:\blah /s /q

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM