PHP函數(shù)rmdir()的使用技巧講解
在PHP語(yǔ)言中,有許多函數(shù)供我們編程使用,同樣他們的功能也是非常強(qiáng)大的。我們今天就要為大家介紹的有關(guān)PHP函數(shù)rmdir()的相關(guān)使用方法。Rasmus Lerdorf 在 1994 年發(fā)布了 PHP 的***個(gè)版本。從那時(shí)起它就飛速發(fā)展,并在原始發(fā)行版上經(jīng)過(guò)無(wú)數(shù)的改進(jìn)和完善現(xiàn)在已經(jīng)發(fā)展到版本 4.0.3 。
#t#PHP 是一種嵌入在 HTML 并由服務(wù)器解釋的腳本語(yǔ)言。它可以用于管理動(dòng)態(tài)內(nèi)容、支持?jǐn)?shù)據(jù)庫(kù)、處理會(huì)話跟蹤,甚至構(gòu)建整個(gè)電子商務(wù)站點(diǎn)。它支持許多流行的數(shù)據(jù)庫(kù),包括 MySQL、PostgreSQL、Oracle、Sybase、Informix 和 Microsoft SQL Server。動(dòng)態(tài)內(nèi)容為什 么這么熱門?假設(shè)您正在管理有 10 個(gè)產(chǎn)品的電子商務(wù)站點(diǎn)。只要產(chǎn)品不是經(jīng)常變動(dòng)或者預(yù)料到它不會(huì)有太大的變動(dòng),那么手工編寫 10 個(gè)帶有必要的信息、表單和諸如此類內(nèi)容的靜態(tài)產(chǎn)品頁(yè)面是不困難的。但是,假設(shè)您在本月再要添加 10 個(gè)或更多產(chǎn)品,然后在下個(gè)月要更多,而且價(jià)格有時(shí)會(huì)變動(dòng)或者想改變站點(diǎn)的觀感。那么您就會(huì)陷入用手工重新編寫數(shù)十個(gè),也許上百個(gè)靜態(tài)頁(yè)面的困境中。
另一方面,假設(shè)您從創(chuàng)建 product.php 頁(yè)面開(kāi)始。它沒(méi)有靜態(tài)信息,而是編碼成可以從產(chǎn)品數(shù)據(jù)庫(kù)中提取信息并動(dòng)態(tài)地構(gòu)建一個(gè)頁(yè)面。然后您就擁有了一個(gè)元數(shù)據(jù)頁(yè)面,它可以根據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中的信息 提供一個(gè)、一百個(gè)、甚至十萬(wàn)個(gè)單獨(dú)頁(yè)面?,F(xiàn)在網(wǎng)站管理員不再整天都簡(jiǎn)單重復(fù)更新靜態(tài)頁(yè)面的工作,因?yàn)樵诟鹿緮?shù)據(jù)庫(kù)中的信息同時(shí)就可以更新頁(yè)面上的信 息。這樣就消除了令人頭疼的時(shí)間延遲(在數(shù)據(jù)庫(kù)中更改信息和在網(wǎng)站上顯示信息之間的時(shí)間間隔)。下面我們來(lái)看一個(gè)PHP遞歸刪除目錄的例子,希望對(duì)大家有幫助。
PHP函數(shù)rmdir()就可以搞定,但是要?jiǎng)h除一個(gè)非空目錄,將不能進(jìn)行快速的刪除,必須先將目錄中文件刪除,但是目錄里可能還會(huì)有子目錄所以要進(jìn)行PHP遞歸刪除目錄:
PHP遞歸刪除目錄代碼:
- < ?php
- functiondeletedir($dir){
- if(!handle=@opendir($dir)){//檢測(cè)要打開(kāi)目錄是否存在
- die("沒(méi)有該目錄");
- }
- while(false!==($file=readdir($handle))){
- if($file!=="."&&$file!==".."){//排除當(dāng)前目錄與父級(jí)目錄
- $file=$dir.DIRECTORY_SEPARATOR.$file;
- if(is_dir($file)){
- deletedir($file);
- }else{
- if(@unlink($file)){
- echo"文件<b>$file</b>刪除成功。<br>";
- }else{
- echo"文件<b>$file</b>刪除失敗!<br>";
- }
- }
- }
- if(@rmdir($dir)){
- echo"目錄<b>$dir</b>刪除成功了。<br>\n";
- }else{
- echo"目錄<b>$dir</b>刪除失?。?/span><br>\n";
- }
- }
- //測(cè)試程序
- $dir="/var/www/test";
- deletedir($dir);
- ?>
在/var/www/test文件夾下建一寫文件夾和文件測(cè)試
- shell>touchaaa
- shell>touchbbb
- shell>touchccc
- shell>toucheee
- shell>touchffff
- shell>mkdir111
- shell>mkdir222
- shell>mkdir333
分別再在111,222,333文件夾下建寫文件這里就不多說(shuō)了,然后給他們權(quán)限
- shell>chown[url]www.www[/url]test-R
以上就是PHP函數(shù)rmdir()實(shí)現(xiàn)PHP遞歸刪除目錄的具體方式和測(cè)試結(jié)果,供大家參考。