scandir

(PHP 5)

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

説明

array scandir ( string directory [, int sorting_order] )

directory配下のファイルとディレクトリを 配列にして返します。directoryが ディレクトリではない場合、 FALSE を返し、 E_WARNINGレベルのエラーを発行します。

デフォルトでは、ソート順はアルファベット昇順です。 オプションのsorting_orderが使用(1にセット)された 場合、ソート順はアルファベット降順になります。

例 1. scandir() の簡単な例

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

print_r($files1);
print_r($files2);

/* Outputs something like:
Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => somedir
)
Array
(
    [0] => somedir
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)
*/
?>

例 2. PHP 4 による scandir()の代替

<?php
$dir
= "/tmp";
$dh  = opendir($dir);
while (
false !== ($filename = readdir($dh))) {
    
$files[] = $filename;
}

sort($files);

print_r($files);

rsort($files);

print_r($files);

/* Outputs something like:
Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => somedir
)
Array
(
    [0] => somedir
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)
*/
?>

opendir(), readdir(), glob(), is_dir(), sort()も参照してください。