9月, 2013年

[php]ディレクトリの内容を読み取る

2013-09-30

ディレクトリの内容を取得してファイルが存在するかを調べるサンプルです。

<?php
  header("Content-Type: text/plain; charset=UTF-8");

  //現在ディレクトリ
  $current = getcwd();

  //@を付けてディレクトリが開けない場合のエラーを抑制
  $dir_handle = @opendir($current);

  if($dir_handle !== FALSE) {
    //1ファイル(ディレクトリ)ずつ読み込む
    while(($file = readdir($dir_handle)) !== FALSE) {
      echo $file, "\n";
    }
    closedir($dir_handle);
  }
  else {
    echo "ディレクトリが開けません";
  }
?>

重複しないファイル名を作成する

2013-09-15

特定のディレクトリにほかのファイルと重複しないユニークな名前のファイル名を作成するサンプルです。

<?php
  header("Content-Type: text/plain; charset=UTF-8");

  echo "現在のディレクトリ => ".__DIR__."\n";
  echo "現在のディレクトリのファイル一覧\n";

  $files = @scandir(__DIR__);

  if(is_array($files)) {
    foreach($files as $key => $file) {
      echo $file, "\n";
    }
  }
  else {
    echo "ディレクトリが開けません";
  }

  $uniq_name = tempnam(__DIR__, "PHP_UNIQ_");
  echo "一意なファイル名 => ".$uniq_name."\n";

  //ファイルは削除されないため明示的に削除する
  unlink($uniq_name);
?>
Copyright(c) 2012 AbilitySystem All Rights Reserved.