(PHP 4, PHP 5)
readdir — ディレクトリハンドルからエントリを読み込む
ディレクトリから次のファイルのファイル名を返します。 ファイル名はファイルシステム上に格納されている順番で返されます。
成功した場合にファイル名、失敗した場合に FALSE を返します。
例1 ディレクトリ内の全てのファイルのリストを得る
以下の例で、readdir() の返り値をどのように調べているかに 注目してください。返り値が FALSE と一致することを、明示的に (値が等しく、かつ型も等しい - 詳細は 比較演算子 を参照ください)調べています。なぜなら、そうしないと FALSE と評価されてしまうディレクトリエントリ (例: "0" という名前のディレクトリ)があった場合にループが とまってしまうからです。
<?php
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);
}
?>
例2 カレントディレクトリの全てのファイルを一覧する。ただし . および .. は取り除く
<?php
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file\n";
}
}
closedir($handle);
}
?>