(PHP 4, PHP 5)
readdir — 從目錄句柄中讀取條目
說明
string readdir ([ resource$dir_handle
] )
返回目錄中下一個文件的文件名。文件名以在文件系統中的排序返回。
參數
dir_handle
目錄句柄的 resource,之前由 opendir() 打開
返回值
成功則返回文件名 或者在失敗時返回 FALSE
此函數可能返回布爾值
FALSE
,但也可能返回等同于 FALSE
的非布爾值。請閱讀 布爾類型章節以獲取更多信息。應使用
===
運算符來測試此函數的返回值。
范例
Example #1 列出目錄中的所有文件
請留意下面例子中檢查 readdir()
返回值的風格。這里明確地測試返回值是否全等于(值和類型都相同——更多信息參見比較運算符)FALSE
,否則任何目錄項的名稱求值為
FALSE
的都會導致循環停止(例如一個目錄名為“0”)。
<?php
// 注意在 4.0.0-RC2 之前不存在 !== 運算符
if ($handle = opendir('/path/to/files')) {
echo "Directory handle: $handlen";
echo "Files:n";
/* 這是正確地遍歷目錄方法 */
while (false !== ($file = readdir($handle))) {
echo "$filen";
}
/* 這是錯誤地遍歷目錄的方法 */
while ($file = readdir($handle)) {
echo "$filen";
}
closedir($handle);
}
?>
Example #2 列出當前目錄的所有文件并去掉 . 和 ..
<?php
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$filen";
}
}
closedir($handle);
}
?>
參見
is_dir() - 判斷給定文件名是否是一個目錄 glob() - 尋找與模式匹配的文件路徑 opendir() - 打開目錄句柄 scandir() - 列出指定路徑中的文件和目錄