rmdir刪除文件報Permission denied in 錯誤

    寫了個刪除文件夾下的目錄和文件的函數,文件可以刪除,但是目錄刪除不掉,出現“Permission denied in ”的警告,這個問題是由於在函數打開後,沒有關閉,直接刪除導致的。在刪除文件之前,調用closedir()關閉下句柄,再調用刪除方法即可。附刪除文件的函數:

    

//刪除目錄,如果目錄裏有內容,則級聯刪除
	function delDir($path){
		//不是目錄,則直接返回
		if(!is_dir($path)){
			return NULL;
		}
		$dh=opendir($path);
		while(($row=readdir($dh))!==false){
			if($row=='.'||$row=='..'){
				continue;
			}
			echo $row.'<br/>';
			if(!is_dir($path.'/'.$row)){
				unlink($path.'/'.$row);
			}else{
				delDir($path.'/'.$row);
			}
		}
		closedir($dh);		//刪除文件之前,必須關閉打開的句柄,否則提示 Permission denied in 錯誤。
		rmdir($path);
		//刪除成功,返回true
		return true;
	}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章