php刪除目錄需要用到的函數是rmdir,rmdir是刪除指定目錄的函數,是常用函數,這篇文章我們就來看看rmdir函數的具體用法。
我們先來看看rmdir函數的基本語法
將目錄名稱(目錄的路徑)傳遞為參數。
rmdir(目录名称);
如果因為沒有指定目錄而無法刪除目錄,請注意將發生e_warning等級錯誤。
此外,如果在rmdir中指定的目錄內存在檔案或其他目錄,則在rmdir中無法刪除指定的目錄。
執行此操作時,必須清空指定的目錄一次,然後使用rmdir再次刪除該目錄。
如何使用rmdir函數?
我們來看具體的範例
mkdir('sample'); if (is_dir('sample')) { $files = array_diff(scandir('sample'), array('.','..')); if (empty($files)) { echo "删除目录:sample\n"; rmdir('sample'); } }
在範例程式中,首先使用mkdir函數建立範例目錄。
在實際執行rmdir函數之前,必須檢查「指定目錄的存在」「指定的目錄是否為空」。
如果不這樣做,可能會在執行rmdir函數時導致錯誤。
刪除非空白目錄
如果在rmdir中指定的目錄內存在檔案或其他目錄,則在rmdir中無法刪除指定的目錄。
因此,如果要刪除非空目錄,則必須刪除指定目錄中的所有其他目錄和文件,然後使用rmdir函數再次刪除它們。
我們來看具體範例
// function remove_directory($dir) { $files = array_diff(scandir($dir), array('.','..')); foreach ($files as $file) { // if (is_dir("$dir/$file")) { // remove_directory("$dir/$file"); } else { // unlink("$dir/$file"); echo "目录:" . $dir . "/" . $file . "删除\n"; } } // echo "目录:" . $dir . "删除\n"; return rmdir($dir); } // // mkdir('test1'); mkdir('test1/test2'); touch('test1/test2/test3'); // // remove_directory('test1');
在範例程式中,我們先定義一個名為remove_directory的函數。
此remove_directory函數檢查指定目錄的內容,如果沒有內容則刪除指定的目錄,如果有內容則根據內容變更處理。
在第三行中,您將獲得指定目錄中的文件組(另一個目錄和文件),對於第4行到第14行中的每個文件組,使用unlink函數刪除文件如果是目錄,請再次呼叫remove_directory函數。
最後,在第17行,刪除使用rmdir函數變成空的指定目錄。
在第20-23行建立非空目錄。
第26行使用remove_directory函數刪除非空的目錄。
以上是如何使用php中的rmdir函數刪除目錄文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!