PHP目錄處理—瀏覽目錄以及操作目錄
在本篇文章中,我們主要講述關於目錄處理的瀏覽目錄以及操作目錄,就像檔案處理一樣的讀取,寫入操作,目錄處理跟檔案處理類似,但是操作方法可能有點區別。
那麼上一篇文章《PHP目錄處理—開啟/關閉目錄》中,介紹了目錄處理的最基礎的開啟和關閉目錄。下面我們將詳細介紹瀏覽目錄,操作目錄!
—:瀏覽目錄
在 PHP 瀏覽目錄中的檔案,我們使用 scandir()函數,該函數文法格式如下:
array scandir ( string $directory [, int $sorting_order [, resource $context ]] )
該函數返回一個數組,包含 directory 中的所有檔案和目錄。參數 sorting_order 指定排序次序,預設按字母升序排序,如果添加了該參數,那麼就會變為降序排序。
下面的執行個體將查看一個目錄下的所有檔案,具體範例程式碼如下:
<?phpheader("Content-Type:text/html; charset=utf-8");$path = "D:\phpStudy\WWW\php";if(is_dir($path)){ //檢測是否是一個目錄 $dir = scandir($path); //使用 scandir()函數取得所有檔案及目錄 foreach ($dir as $value){ //使用 foreach 迴圈 echo $value."<br>"; //迴圈輸出檔案及目錄名稱 }} else{ echo "路徑錯誤";}?>
運行結果如下:
二:操作目錄
目錄是一種特殊的檔案,也就是說,對檔案的操作函數(如:重新命名)多數同樣適用於目錄,但是還有一些特殊的函數只是專門針對目錄的,下面列表就是一些常用的目錄操作函數:
| 函數原型 |
函數說明 |
舉例 |
| bool mkdir(string $pathname) |
建立一個指定的目錄 |
mkdir('temp'); |
| bool rmdir(string $dirname) |
刪除所指定的目錄,該目錄必須是空的 |
rmdir('tmp') |
| string getcwd(void) |
取得當前工作的目錄 |
getcwd() |
| bool chdir(string directory) |
改變目前的目錄為 directory |
echo getcwd()."<br>"; chdir('../');echo getcwd()."<br>" |
| float disk_free_space(string directory) |
返回目錄的可用空間(bytes)。被檢查的檔案必須通過伺服器的檔案系統訪問 |
disk_free_space('d:\\appserv'); |
| float disk_total_space(string directory) |
返回目錄的總空間大小(bytes) |
disk_total_sapce('d:\\appserv') |
| string readdir(resource handle) |
返回目錄中下一個檔案的檔案名稱(使用此函數時,目錄必須是使用 opendir()函數開啟的)。在PHP5之前,都是使用這個函數來瀏覽目錄的。 |
while(false!==($path=readdir($handle))){echo $path;} |
| void rewinddir(resource handle) |
將指定的目錄重新指定到目錄的開頭 |
rewinddir($handle) |
PHP目錄處理先到這裡就結束了,下面我們繼續介紹PHP檔案處理,具體請閱讀《PHP檔案處理的進階應用程式—遠程檔案訪問及鎖定檔案》!