刪除檔案與目錄的函式,執行時只要遇到空目錄就會出現錯誤訊息

edited 十月 2013 in PHP新手區
以下是我的刪除檔案與目錄的函式,執行時只要遇到空目錄就會出現錯誤訊息(我列於最下方)
// 引數 $item 表示要刪除的目錄的路徑
function remove($item) {
  //若為檔案則直接刪除\
  if(is_file($item)) unlink($item);
  //若為目錄則進行以下程序
  elseif(is_dir($item)) {

    $handle=opendir($item);

    while($file=readdir($handle)) {

        //跳過此二特殊目錄不處理
	if(($file==".." || $file==".")) continue;
			
	$new_item = $item.'/'.$file;

	//若為目錄則再循環一次本函式		
	if(is_dir($new_item)) {  remove($new_item); }
        //否則即為檔案,並直接刪除\
        else {	unlink($new_item);  }
    }
		
  closedir($handle);
  //最後在確保所要刪除之目錄內的東西清空後,才執行rmdir()函式.
  rmdir($item);
  }	
}




[錯誤訊息在此]:
Warning: opendir(test/PPP/): failed to open dir: Invalid argument in f:\my webs\process_file.php on line 66

Warning: readdir(): supplied argument is not a valid Directory resource in f:\my webs\process_file.php on line 68

Warning: closedir(): supplied argument is not a valid Directory resource in f:\my webs\process_file.php on line 80

Warning: rmdir(test/PPP/): No such file or directory in f:\my webs\process_file.php on line 81


原始討論: http://twpug.net/x/modules/newbb/viewtopic.php?topic_id=276

評論

Sign In or Register to comment.