欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php創(chuàng)建和刪除目錄函數(shù)介紹和遞歸刪除目錄函數(shù)分享

 更新時(shí)間:2014年11月18日 10:22:53   投稿:junjie  
這篇文章主要介紹了php創(chuàng)建和刪除目錄函數(shù)介紹和遞歸刪除目錄函數(shù)分享,本文重點(diǎn)是對(duì)遞歸刪除目錄的自定義函數(shù)分享,需要的朋友可以參考下

mkdir() — 新建目錄

復(fù)制代碼 代碼如下:

– 語法:bool mkdir (string pathname [,int mode])
– 嘗試新建一個(gè)由 pathname 指定的目錄。

rmdir() — 刪除目錄
復(fù)制代碼 代碼如下:

– 語法:bool rmdir ( string dirname )
– 嘗試刪除 dirname 所指定的目錄。 該目錄必須是空的,而且要有相應(yīng)的權(quán)限。如果成功則返回 TRUE,失敗則返回
FALSE。

unlink — 刪除文件
復(fù)制代碼 代碼如下:

– 語法:bool unlink ( string filename )
– 刪除 filename。和 Unix C 的 unlink() 函數(shù)相似。如果成功則返回 TRUE,失敗則返回 FALSE。

在PHP中,使用mkdir()函數(shù)只需要傳入一個(gè)目錄名即可很容易地建立一個(gè)新目錄。但刪除目錄所使用的函數(shù)rmdir(),只能刪除一個(gè)空目錄并且目錄必須存在。如果是非空的目錄就需要先進(jìn)入到目錄中,使用unlink()函數(shù)將目錄中的每個(gè)文件都刪除掉,再回來將這個(gè)空目錄刪除。如果目錄中還存在目錄,而且子目錄也非空,就要使用遞歸的方法了。自定義遞歸函數(shù)刪除目錄的程序代碼如下所示:

復(fù)制代碼 代碼如下:

<?php
//自定義函數(shù)遞歸的刪除整個(gè)目錄
function delDir($directory){
    if(file_exists($directory)){      //如果不存在rmdir()函數(shù)會(huì)出錯(cuò)
        if($dir_handle = @opendir($directory)){       //打開目錄,并判斷是否能成功打開
            while($filename = readdir($dir_handle)){       //循環(huán)遍歷目錄下的所有文件
               if($filename != "."&& $filename != ".."){       //一定要排除兩個(gè)特殊的目錄
                   $subFile = $directory."/".$filename;       //將目錄下的子文件和當(dāng)前目錄相連
                   if(is_dir($subFile))        //如果為目錄則條件成立
                   delDir($subFile);       //遞歸地調(diào)用自身函數(shù),刪除子目錄
                   if(is_file($subFile))      //如果是文件則條件成立
                   unlink($subFile);           //直接刪除這個(gè)文件
               }
            }
            closedir($dir_handle); //關(guān)閉文件資源
            rmdir($directory); //刪除空目錄
         }
      }
}
 
dirDir("phpMyAdmin"); //調(diào)用delDir()函數(shù),將程序所在目錄中的“phpMyAdmin”文件刪除
?>

當(dāng)然也可以通過調(diào)用操作系統(tǒng)命令“rm-rf”刪除非空的目錄,但也要從安全和跨平臺(tái)方面考慮盡量不要去使用。

相關(guān)文章

最新評(píng)論