中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中的rmdir怎么利用遞歸函數進行刪除

發布時間:2020-12-11 15:36:27 來源:億速云 閱讀:172 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關php中的rmdir怎么利用遞歸函數進行刪除,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

php rmdir()函數

rmdir — 刪除空目錄

語法:

bool rmdir ( string $dirname [, resource $context ] )

嘗試刪除 dirname 所指定的目錄。 該目錄必須是空的,而且要有相應的權限。 失敗時會產生一個E_WARNING級別的錯誤。
參數:

1.dirname:目錄的路徑。
2.context:在 PHP 5.0.0 中增加了對上下文(Context)的支持。

php rmdir()刪除非空目錄

上面已經說過,rmdir()函數只能刪除空目錄,如果是非空目錄就需要先進入到目錄中,使用unlink()函數將目錄中的每個文件都刪除掉,再回來將這個空目錄刪除。如果目錄中還存在子目錄,而且目錄也非空,就需要使用遞歸的方法。自定義遞歸函數刪除目錄的源代碼如下:

<?php
function delDir($directory){//自定義函數遞歸的函數整個目錄
  if(file_exists($directory)){//判斷目錄是否存在,如果不存在rmdir()函數會出錯
    if($dir_handle=@opendir($directory)){//打開目錄返回目錄資源,并判斷是否成功
      while($filename=readdir($dir_handle)){//遍歷目錄,讀出目錄中的文件或文件夾
        if($filename!='.' && $filename!='..'){//一定要排除兩個特殊的目錄
          $subFile=$directory."/".$filename;//將目錄下的文件與當前目錄相連
          if(is_dir($subFile)){//如果是目錄條件則成了
            delDir($subFile);//遞歸調用自己刪除子目錄
          }
          if(is_file($subFile)){//如果是文件條件則成立
            unlink($subFile);//直接刪除這個文件
          }
        }
      }
      closedir($dir_handle);//關閉目錄資源
      rmdir($directory);//刪除空目錄
    }
  }
}

delDir("mydir");//調用delDir函數

?>

處理遞歸刪除非空目錄外,我們也可以使用操作系統命令“rm -rf”刪除非空的目錄,但也要從安全和跨平臺方面考慮盡量不要去使用。

上述就是小編為大家分享的php中的rmdir怎么利用遞歸函數進行刪除了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

布尔津县| 临沭县| 织金县| 平顶山市| 安塞县| 顺义区| 河间市| 西宁市| 镇康县| 遂川县| 迁西县| 达孜县| 逊克县| 金秀| 胶州市| 志丹县| 宝应县| 民勤县| 始兴县| 永善县| 朝阳区| 上饶市| 永川市| 叶城县| 崇礼县| 报价| 佳木斯市| 禹城市| 南召县| 青冈县| 宜兴市| 佛学| 大荔县| 万盛区| 鸡西市| 东港市| 甘肃省| 萨嘎县| 濉溪县| 普兰店市| 潼关县|