scandir

(PHP 5, PHP 7, PHP 8)

scandir 指定されたパスのファイルとディレクトリのリストを取得する

説明

scandir(string$directory, int$sorting_order = SCANDIR_SORT_ASCENDING, ?resource$context = null): array|false

directory 内のファイルおよびディレクトリを 配列で返します。

パラメータ

directory

調べるディレクトリ。

sorting_order

デフォルトでは、ソート順はアルファベット昇順です。 オプションの sorting_orderSCANDIR_SORT_DESCENDING を設定した場合、 ソート順はアルファベット降順になります。 SCANDIR_SORT_NONE を設定すると、 結果をソートせずに返します。

context

context パラメータの説明については、 マニュアルのストリーム を参照ください。

戻り値

成功した場合にファイル名の配列、失敗した場合に false を返します。 directory がディレクトリではない場合は、 false を返し、E_WARNING レベルのエラーを 発行します。

変更履歴

バージョン説明
8.0.0context は、nullable になりました。

例1 scandir() の簡単な例

<?php
$dir
= '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, SCANDIR_SORT_DESCENDING);

print_r($files1);
print_r($files2);
?>

上の例の出力は、 たとえば以下のようになります。

Array ( [0] => . [1] => .. [2] => bar.php [3] => foo.txt [4] => somedir ) Array ( [0] => somedir [1] => foo.txt [2] => bar.php [3] => .. [4] => . )

注意

ヒント

fopen wrappers が有効の場合、この関数のファイル名として URL を使用することができます。ファイル名の指定方法に関する詳細は fopen() を参照ください。 サポートするプロトコル/ラッパー には、さまざまなラッパーの機能やその使用法、 提供される定義済み変数などの情報がまとめられています。

参考

  • opendir() - ディレクトリハンドルをオープンする
  • readdir() - ディレクトリハンドルからエントリを読み込む
  • glob() - パターンにマッチするパス名を探す
  • is_dir() - ファイルがディレクトリかどうかを調べる
  • sort() - 配列を昇順にソートする
To Top