SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

画像ファイルの内容を見て種類(jpeg,gif…)を判断する方法

拡張子がない画像ファイル、拡張子があてにならない画像ファイルなどでも、画像の形式を判断する方法。

たとえば、こんなときです。

そこで getimagesize()
get image size という名前なので、画像のサイズを取得するだけかと思って、GD関連のマニュアルを確認するまで、気づきませんでした。

こんな風にすると

$data = getimagesize('/path/to/image.jpg');

こんな配列が返ってきます

array(7) {
  [0]=>
  int(300)
  [1]=>
  int(300)
  [2]=>
  int(2)
  [3]=>
  string(24) "width="300" height="300""
  ["bits"]=>
  int(8)
  ["channels"]=>
  int(3)
  ["mime"]=>
  string(10) "image/jpeg"
}

幅、高さにつづいて、数値で2と出ているところが画像の形式を現しています。定数 IMAGETYPE_XXX と比較して、JPEGなのかGIFなのかPNGなのか……を判断できます。

関連するメモ

コメント