readdir()函數(shù)從目錄句柄中讀取條目
string readdir ( resource $dir_handle );
它返回目錄中下一個文件的文件名。文件名按文件系統(tǒng)存儲的順序返回。
序號 | 參數(shù)及說明 |
---|---|
1 | dir_handle(必需) 目錄句柄的 resource,之前由 opendir() 打開 |
成功返回文件名,失敗返回FALSE。
注意:此函數(shù)可能返回布爾值 FALSE,但也可能返回等同于 FALSE 的非布爾值。請閱讀 布爾類型章節(jié)以獲取更多信息。應使用 === 運算符來測試此函數(shù)的返回值。
以下是此函數(shù)的用法,打開一個目錄,讀取它的內(nèi)容,然后關閉:
<?php $dir = opendir("/var/www/images"); while (($file = readdir($dir)) !== false) { echo "filename: " . $file . "<br />"; } closedir($dir); ?>
輸出結(jié)果
filename: . filename: .. filename: logo.gif filename: mohd.gif
列出目錄中的所有文件 :
請留意下面實例中檢查 readdir() 返回值的風格。這里明確地測試返回值是否全等于(值和類型都相同——更多信息參見比較運算符)FALSE,否則任何目錄項的名稱求值為 FALSE 的都會導致循環(huán)停止(例如一個目錄名為“0”)。
<?php // 注意在 4.0.0-RC2 之前不存在 !== 運算符 if ($handle = opendir('/path/to/files')) { echo "Directory handle: $handle\n"; echo "Files:\n"; /* 這是正確地遍歷目錄方法 */ while (false !== ($file = readdir($handle))) { echo "$file\n"; } /* 這是錯誤地遍歷目錄的方法 */ while ($file = readdir($handle)) { echo "$file\n"; } closedir($handle); } ?>