本文執行個體總結了兩種php遞迴刪除指定檔案夾的方法。分享給大家供大家參考。具體如下:
方法一:
function recursiveDelete($dir){ if ($handle = @opendir($dir)) { while (($file = readdir($handle)) !== false) { if (($file == ".") || ($file == "..")) { continue; } if (is_dir($dir . '/' . $file)) { // call self for this directory recursiveDelete($dir . '/' . $file); } else { unlink($dir . '/' . $file); // remove this file } } @closedir($handle); rmdir ($dir); }}
方法二:
/* 自訂的刪除函數,可以刪除檔案和遞迴刪除檔案夾*/ function my_del($path){ if(is_dir($path)) { $file_list= scandir($path); foreach ($file_list as $file) { if( $file!='.' && $file!='..') { my_del($path.'/'.$file); } } @rmdir($path); //這種方法不用判斷檔案夾是否為空白, //因為不管開始時檔案夾是否為空白,到達這裡的時候,都是空的 } else { @unlink($path); //這兩個地方最好還是要用@屏蔽一下warning錯誤,看著鬧心 }}$path='d:/技術文檔 - 副本';//要刪除的檔案夾//如果php檔案不是ANSI,而是UTF-8模式,//而且要刪除的檔案夾中包含漢字字元的話,調用函數前需要轉碼//$path=iconv( 'utf-8', 'gb2312',$path );my_del($path);
希望本文所述對大家的php程式設計有所協助。