TOP ▲ itcore TOP プログラムパーツ

uOpendirArrayGet ディレクトリ配下のファイル名を配列に入れる。.と..は除く。 | itcore 2017年

PHP関数

<?php
// ディレクトリ配下のファイル名を配列に入れる。.と..は除く。 $a_fname = uOpendirArrayGet($dir, $type);
function uOpendirArrayGet($dir, $type = "")
{
    $a_fname = array();
    $dh = opendir($dir);
    if (false === $dh) {
        echo "オープン出来ません。dir=$dir<br>\n";
        return $a_fname;
    }
    while (false !== ($fname = readdir($dh))) {
        // 対象外のチェック
        if ("." == $fname) {
            continue;
        } elseif (".." == $fname) {
            continue;
        }
        if ("dir" == $type) {
            if (!is_dir("$dir/$fname")) {
                continue;
            }
        } elseif ("file" == $type) {
            if (!is_file("$dir/$fname")) {
                continue;
            }
        }
        // 対象
        $a_fname[] = $fname;
    }
    closedir($dh);
    sort($a_fname);
    return $a_fname;
}
?>

単体テスト 実行

<?php include "uOpendirArrayGet.func"; ?>
<?php
  $dir = ".";
  $a_fname = uOpendirArrayGet($dir);
  foreach ($a_fname as $fname) {
    if (".func" == substr($fname, -5)) echo "fname=$fname<br>\n";
  }
?>

<?php include "uJsClose.func"; print(uJsClose()); // 閉じるボタン ?>