• ベストアンサー

同階層にある画像ファイルの数を調べる方法は?

自己解決できませんでしたので、お教え下さい。 フォルダの中にindex.htmlと複数の画像ファイルが入っています。 index.htmlをブラウザで表示しますと、テキストと画像が表示されます。 この画像をクリックした時に、拡大画像とその他画像のサムネール一覧を 出すプログラムをPHPで作成したいと思っています。 そこで、お教えいただきたいのは、画像をクリックしたときに、フォルダ内にある画像ファイルの内、ファイル名に「_b.jpg」が入っているものの数を調べたいのですが、その方法が分かりません。 PHPのバージョンは 4.3.9 です。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.2

ディレクトリ関数を使います。   http://www.php.net/manual/ja/book.dir.php readdirでファイル名を取得→ファイル名に所定の文字列があったらカウント(strposでいいと思います)という手順でいいと思います。   $cnt = 0;   if ($handle = opendir('/path/to/files')) {     while (false !== ($file = readdir($handle))) {       if (strpos($file, '_b.jpg') !== false) { $cnt++; }     }   }   closedir($handle); #未検証ですのであしからず(汗

booooob
質問者

お礼

お教えいただいたもので希望通りのものが実現できました。 この度はアドバイスいただきありがとうございました。

その他の回答 (1)

  • newjiro
  • ベストアンサー率33% (1/3)
回答No.1

>PHPのバージョンは 4.3.9 です。 とのことですが、こちらを参考にしてはいかがでしょうか? ※サイト下部にPHP4の場合が記載されています。 http://php.benscom.com/manual/ja/function.scandir.php その後、preg_match等で文字列の検索をし、 ヒットしたものを新たな配列に格納してカウントする。。。 で、いかがでしょう?

booooob
質問者

お礼

ご返答ありがとうございます。 リンク先のページを拝見しました。 PHP5ですと、簡単にできそうですね。 PHP4の方法も勉強になりました。 検討した結果、今回は配列を使用しない方法で行こうと思います。

関連するQ&A