今天就跟大家聊聊有關(guān)PHP中的目錄遍歷函數(shù)有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
在進行PHP編程時,需要對服務器某個目錄下面的文件進行瀏覽,通常成為遍歷目錄。取得一個目錄下的文件和子目錄,就需要用到opendir()函數(shù)、readdir()函數(shù)、closedir()函數(shù)和rewinddir()函數(shù)。
①函數(shù)opendir()
函數(shù)opendir()用于打開指定目錄,接受一個目錄的路徑及目錄名作為參數(shù),函數(shù)返回值為可供其他目錄函數(shù)使用的目錄句柄(資源類型)。如果該目錄不存在或者沒有訪問權(quán)限,則返回FALSE。
②函數(shù)readdir()
函數(shù)readdir()用于讀取指定目錄,接受已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄作為參數(shù),函數(shù)返回當前目錄指針位置的一個文件名,并將目錄指針向后移動一位。當指針位于目錄的結(jié)尾時,因為沒有文件存在則返回FALSE。
③函數(shù)closedir()
函數(shù)closedir()關(guān)閉指定目錄,接受已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄作為參數(shù)。函數(shù)無返回值,運行后關(guān)閉打開的目錄。
④函數(shù)rewinddir()
函數(shù)reweinddir()倒回目錄句柄,接受已經(jīng)用opendir()函數(shù)打開的可操作目錄句柄作為參數(shù)。將目錄指針重置目錄到開始處,即倒回目錄的開頭。
下面用一個實例來說明以上幾個函數(shù)的使用方法。注意,在使用該例子前請確保同意目錄下有phpMyAdmin文件夾。代碼如下所示:
<?php $num = 0; //用來統(tǒng)計子目錄和文件的個數(shù) $dirname = 'phpMyAdmin'; //保存當前目錄下用來便利的一個目錄名 $dir_handle = opendir($dirname); //用opendir打開目錄 //將遍歷的目錄和文件名使用表格格式輸出 echo '<table border="0" align="center" width="600" cellspacing="0" cellpadding="0">'; echo '<caption><h3>目錄'.$dirname.'下面的內(nèi)容</h3></caption>'; echo '<tr align="left" bgcolor="#cccccc">'; echo '<th>文件名</th><th>文件大小</th><th>文件類型</th><th>修改時間</th>'; //使用readdir循環(huán)讀取目錄里的內(nèi)容 while($file = readdir($dir_handle)){ //將將目錄下的文件和當前目錄連接起來,才能在程序中使用 $dirFile = $dirname."/".$file; $bgcolor = $num+%2==0 ? '#FFFFFF' : '#CCCCCC'; //各行一種顏色 echo '<tr bgcolor='.$bgcolor.'>'; echo '<td>'.filesize($dirFile).'</td>'; //顯示文件名 echo '<td>'.filetype($dirFile).'</td>'; //顯示文件大小 echo '<td>'.date("Y/n/t",filemtime($dirFile)).'</td>'; //格式化顯示文件修改時間 echo '</tr>'; } echo '</table>'; closedir($dir_handle); //關(guān)閉文件操作句柄 echo '在<b>'.$dirname.'</b>目錄下的子目錄和文件共有<b>'.$num.'</b>個'; ?>
上述程序首先打開一個目錄指針,并對其進行遍歷。遍歷目錄時,會包括“.”和“..”兩個特殊的目錄,如果不需要這倆個目錄,可以將其屏蔽。當然顯示細節(jié)會因為文件夾中內(nèi)容的不同而有所不同。通過上例可見,在PHP中瀏覽文件夾中的內(nèi)容也并不是一件多么復雜的事情。而且PHP還提供了一種面向?qū)ο蟮姆绞接糜谀夸浀谋闅v,通過使用“dir”類完成。不僅如此,PHP也可以按用戶的要求檢索目錄下指定的內(nèi)容,提供了glob()函數(shù)檢索指定的目錄。該函數(shù)最終返回一個包含檢索結(jié)果的數(shù)組。
看完上述內(nèi)容,你們對PHP中的目錄遍歷函數(shù)有哪些有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
當前題目:PHP中的目錄遍歷函數(shù)有哪些-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://jinyejixie.com/article8/dijdop.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設、外貿(mào)建站、網(wǎng)站設計、網(wǎng)站導航、標簽優(yōu)化、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容