無料CGI、PHPサイト(確認画面付きメールフォーム・メーリングリスト・メルマガ設置、逆アクセスランキング、画像カウンター等)PHPマニュアル by k-sky

scandir

(PHP 5)

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

説明

array scandir ( string $directory [, int $sorting_order [, resource $context ]] )

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

パラメータ

directory

調べるディレクトリ。

sorting_order

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

context

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

返り値

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

例1 scandir() の簡単な例

<?php
$dir    
'/tmp';
$files1 scandir($dir);
$files2 scandir($dir1);

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] => .
)

例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);

?>

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

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()、サポートされる URL プロトコルの種類 については、(例えば)サポートされるプロトコル/ラッパー を参照してください。