opendir
ディレクトリハンドルをオープンする
説明
resourcefalse opendir(string $directory, resourcenull $context = null)
ディレクトリハンドルをオープンします。このハンドルは、この後
closedir, readdir,
rewinddir 関数コールで使用されます。
パラメータ
-
directory
-
オープンするディレクトリのパス。
-
context
-
context パラメータの詳細については
マニュアルのストリーム
を参照ください。
戻り値
成功した場合にディレクトリハンドルを返します。
失敗した場合に false を返します
エラー / 例外
失敗したときは E_WARNING が発生します。
directory が有効なディレクトリでない場合、
権限の制限によりディレクトリがオープンできない場合、
またはファイルシステムのエラー時に起こりえます。
例
例1
ディレクトリ中の全てのエントリを表示します。
ただし、特別な . と
.. ディレクトリはスキップします。
ファイル名やディレクトリ名は、
PHP が false と見なす文字列
(例: "0" という名前のディレクトリ)
の可能性があり、かつ readdir
は全てのディレクトリエントリを読み取ったあとに false を返します。
そのため、PHP が false
とみなすディレクトリ名と、
全てのディレクトリエントリを読み取ったことを適切に区別するためには、
比較演算子 ===
を使う必要があります。
<?php
if ($handle = opendir('/path/to/files')) {
echo "Entries:\n";
/* Correctly handling directory entries that may be considered falsy */
while (false !== ($entry = readdir($handle))) {
if ($entry === '.' || $entry === '..') {
continue;
}
echo "$entry\n";
}
closedir($handle);
}
?>
Entries:
base
en
fr
output.md
test.php
参考
- readdir
- rewinddir
- closedir
- dir
- is_dir
- glob
- scandir