自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PHP函數(shù)rmdir()的使用技巧講解

開(kāi)發(fā) 后端
PHP函數(shù)rmdir()可以幫助我們實(shí)現(xiàn)一個(gè)非空目錄的刪除需求。不過(guò),這種刪除方式的速度是相當(dāng)慢的,我們可以通過(guò)PHP遞歸刪除目錄,來(lái)優(yōu)化刪除方式。

在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遞歸刪除目錄代碼:

  1. < ?php   
  2. functiondeletedir($dir){   
  3. if(!handle=@opendir($dir)){//檢測(cè)要打開(kāi)目錄是否存在   
  4. die("沒(méi)有該目錄");   
  5. }   
  6. while(false!==($file=readdir($handle))){   
  7. if($file!=="."&&$file!==".."){//排除當(dāng)前目錄與父級(jí)目錄   
  8. $file=$dir.DIRECTORY_SEPARATOR.$file;   
  9. if(is_dir($file)){   
  10. deletedir($file);   
  11. }else{   
  12. if(@unlink($file)){   
  13. echo"文件<b>$file</b>刪除成功。<br>";   
  14. }else{   
  15. echo"文件<b>$file</b>刪除失敗!<br>";   
  16. }   
  17. }   
  18. }   
  19. if(@rmdir($dir)){   
  20. echo"目錄<b>$dir</b>刪除成功了。<br>\n";   
  21. }else{   
  22. echo"目錄<b>$dir</b>刪除失?。?/span><br>\n";   
  23. }   
  24. }   
  25. //測(cè)試程序   
  26. $dir="/var/www/test";   
  27. deletedir($dir);   
  28. ?>  

在/var/www/test文件夾下建一寫文件夾和文件測(cè)試

  1. shell>touchaaa   
  2. shell>touchbbb   
  3. shell>touchccc   
  4. shell>toucheee   
  5. shell>touchffff   
  6. shell>mkdir111   
  7. shell>mkdir222   
  8. shell>mkdir333  

分別再在111,222,333文件夾下建寫文件這里就不多說(shuō)了,然后給他們權(quán)限

  1. shell>chown[url]www.www[/url]test-R  

以上就是PHP函數(shù)rmdir()實(shí)現(xiàn)PHP遞歸刪除目錄的具體方式和測(cè)試結(jié)果,供大家參考。

責(zé)任編輯:曹凱 來(lái)源: IT專家網(wǎng)
相關(guān)推薦

2009-11-30 15:10:46

PHP substr函

2009-12-03 20:15:02

PHP rmdir()

2009-12-07 16:59:53

PHP匹配顏色函數(shù)

2009-11-18 16:39:51

PHP遞歸刪除目錄

2009-12-11 17:57:13

PHP應(yīng)用JSON

2009-12-01 10:50:45

PHP函數(shù)requir

2009-11-27 13:24:20

PHP代碼性能優(yōu)化

2009-11-27 16:20:22

PHP遞歸調(diào)用

2009-11-30 17:11:53

PHP函數(shù)preg_g

2009-12-10 17:37:28

PHP Cookie登

2009-11-27 09:30:58

PHP函數(shù)mb_str

2009-12-01 19:17:48

PHP開(kāi)發(fā)高效WEB系

2009-12-04 15:52:46

PHP導(dǎo)入Excel文

2009-11-24 11:00:05

PHP函數(shù)Date()

2009-12-08 13:07:57

PHP函數(shù)mt_sra

2009-12-07 10:54:46

PHP uploade

2009-12-07 14:29:08

PHP array_w

2009-12-09 16:53:45

PHP打印任意時(shí)間

2009-12-09 13:32:08

PHP zend安裝

2009-12-01 14:26:19

PHP函數(shù)ob_sta
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)