《PHP編程:php創(chuàng)建和刪除目錄函數(shù)介紹和遞歸刪除目錄函數(shù)分享》要點(diǎn):
本文介紹了PHP編程:php創(chuàng)建和刪除目錄函數(shù)介紹和遞歸刪除目錄函數(shù)分享,希望對您有用。如果有疑問,可以聯(lián)系我們。
mkdir() ― 新建目錄
PHP應(yīng)用
代碼如下:
C 語法:bool mkdir (string pathname [,int mode])
C 嘗試新建一個由 pathname 指定的目錄.
rmdir() ― 刪除目錄
代碼如下:
C 語法:bool rmdir ( string dirname )
C 嘗試刪除 dirname 所指定的目錄. 該目錄必須是空的,而且要有相應(yīng)的權(quán)限.如果成功則返回 TRUE,失敗則返回
FALSE.
unlink ― 刪除文件
代碼如下:
C 語法:bool unlink ( string filename )
C 刪除 filename.和 Unix C 的 unlink() 函數(shù)相似.如果成功則返回 TRUE,失敗則返回 FALSE.
在PHP中,使用mkdir()函數(shù)只需要傳入一個目錄名即可很容易地建立一個新目錄.但刪除目錄所使用的函數(shù)rmdir(),只能刪除一個空目錄并且目錄必須存在.如果是非空的目錄就需要先進(jìn)入到目錄中,使用unlink()函數(shù)將目錄中的每個文件都刪除掉,再回來將這個空目錄刪除.如果目錄中還存在目錄,而且子目錄也非空,就要使用遞歸的方法了.自定義遞歸函數(shù)刪除目錄的程序代碼如下所示:
PHP應(yīng)用
代碼如下:
<?php
//自定義函數(shù)遞歸的刪除整個目錄
function delDir($directory){
??? if(file_exists($directory)){????? //如果不存在rmdir()函數(shù)會出錯
??????? if($dir_handle = @opendir($directory)){?????? //打開目錄,并判斷是否能成功打開
??????????? while($filename = readdir($dir_handle)){?????? //循環(huán)遍歷目錄下的所有文件
?????????????? if($filename != "."&& $filename != ".."){?????? //一定要排除兩個特殊的目錄
?????????????????? $subFile = $directory."/".$filename;?????? //將目錄下的子文件和當(dāng)前目錄相連
?????????????????? if(is_dir($subFile))??????? //如果為目錄則條件成立
?????????????????? delDir($subFile);?????? //遞歸地調(diào)用自身函數(shù),刪除子目錄
?????????????????? if(is_file($subFile))????? //如果是文件則條件成立
?????????????????? unlink($subFile);?????????? //直接刪除這個文件
?????????????? }
??????????? }
??????????? closedir($dir_handle); //關(guān)閉文件資源
??????????? rmdir($directory); //刪除空目錄
???????? }
????? }
}
?
dirDir("phpMyAdmin"); //調(diào)用delDir()函數(shù),將程序所在目錄中的“phpMyAdmin”文件刪除
?>
當(dāng)然也可以通過調(diào)用操作系統(tǒng)命令“rm-rf”刪除非空的目錄,但也要從平安和跨平臺方面考慮盡量不要去使用.PHP應(yīng)用
維易PHP培訓(xùn)學(xué)院每天發(fā)布《PHP編程:php創(chuàng)建和刪除目錄函數(shù)介紹和遞歸刪除目錄函數(shù)分享》等實(shí)戰(zhàn)技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養(yǎng)人才。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/14017.html