1. HOME
  2. 開発・ブログ運営
  3. PHP
  4. PHP 4で readdir() を使ってファイル(ディレクトリ)を読み込んでみた
2012年10月24日
PHP 4で readdir() を使ってファイル(ディレクト ...
2012年08月13日
PHP で 外部ファイルを include したり requi ...
2012年04月18日
Amazon API(2011-08-01版)と PHP でシ ...
2012年05月13日
iTunes ミュージック検索 & ブログ用タグ生成 ...
2012年07月24日
PHP5 で RSS フィードを読み込んで表示するために、とて ...
2015年08月13日
git で簡単バックアップしてみる

PHP 4で readdir() を使ってファイル(ディレクトリ)を読み込んでみた

あることを試すために、ローカル保存してあるファイルを PHP から読み込んでみました。

PHP ファイル内から、include() とかじゃなくてディレクトリの一覧を取得したり、 ファイルの一覧を取得したりする方法です。

この記事では readdir() でファイルを読み込んでいますが、PHP 5.x な人は、scandir() を使った方が良いみたいです。

関連記事:PHP5 で scandir() を使ってファイル(ディレクトリ)を読み込んでみた

PHP 4.x な人は、この記事通り readdir() を使ってみてください。

手順としては、

  1. ディレクトリハンドラを作成( opendir()関数 )
  2. ハンドラをループで回してファイル(ディレクトリ)を取得( readdir()関数 )
  3. それぞれのファイル(ディレクトリ)に対する処理
  4. ハンドラを閉じる( closedir()関数 )

と、いたって単純。

これだけ。

注意点としては、ファイル/ディレクトリを取得する readdir() の WHILE 文で、

とループを回すのはダメなこと。ディレクトリ名が「0(ゼロ)」とかだった場合に、 FALSE と判定されちゃうからちゃんと動かない。

なので明示的に、

と、真偽判定しましょう。

参考:PHP: opendir – Manual
参考:PHP: readdir – Manual
参考:PHP: closedir – Manual

ちなみに、PHP5 では、scandir() という同じような機能を持った関数が使えます。使い方によっては、scandir() の方が便利かもしれません。

関連記事:PHP5 で scandir() を使ってファイル(ディレクトリ)を読み込んでみた


順番に処理をする

readdir() の読み込み順序はバラバラです。例えばファイルに連番が付いていて、順序通りにファイル処理をしたい場合は、一旦配列に格納して、配列をソートしてから処理する必用があります。

参考:PHP: 配列のソート – Manual

でわでわ。







この記事にコメントする





Copyright © 2012 - 2014 MacBook Air とWordPressでこうなった All rights reserved
Powered by WordPress.