I was looking to detect the format of images, Im not sure if this is the best way but it works for me.
<?php
$filename = 'http://static.php.net/www.php.net/images/php.gif';
$size = getimagesize($filename);
switch ($size['mime']) {
case "image/gif":
echo "Image is a gif";
break;
case "image/jpeg":
echo "Image is a jpeg";
break;
case "image/png":
echo "Image is a png";
break;
case "image/bmp":
echo "Image is a bmp";
break;
}
?>
image_type_to_mime_type
(PHP 4 >= 4.3.0, PHP 5)
image_type_to_mime_type — getimagesize, exif_read_data, exif_thumbnail, exif_imagetypeから返される 画像形式のMIMEタイプを取得する
説明
string image_type_to_mime_type
( int $imagetype
)
image_type_to_mime_type() は IMAGETYPE 定数で指定される Mime-Type を取得します。
パラメータ
- imagetype
-
IMAGETYPE_XXX 定数のいずれか。
返り値
戻り値は次のとおりです。
| imagetype | 戻り値 |
|---|---|
| IMAGETYPE_GIF | image/gif |
| IMAGETYPE_JPEG | image/jpeg |
| IMAGETYPE_PNG | image/png |
| IMAGETYPE_SWF | application/x-shockwave-flash |
| IMAGETYPE_PSD | image/psd |
| IMAGETYPE_BMP | image/bmp |
| IMAGETYPE_TIFF_II (intel byte order) | image/tiff |
| IMAGETYPE_TIFF_MM (motorola byte order) | image/tiff |
| IMAGETYPE_JPC | application/octet-stream |
| IMAGETYPE_JP2 | image/jp2 |
| IMAGETYPE_JPX | application/octet-stream |
| IMAGETYPE_JB2 | application/octet-stream |
| IMAGETYPE_SWC | application/x-shockwave-flash |
| IMAGETYPE_IFF | image/iff |
| IMAGETYPE_WBMP | image/vnd.wap.wbmp |
| IMAGETYPE_XBM | image/xbm |
| IMAGETYPE_ICO | image/vnd.microsoft.icon |
例
例1 image_type_to_mime_type() の例
<?php
header("Content-type: " . image_type_to_mime_type(IMAGETYPE_PNG));
?>
注意
注意: この関数は、GD 画像ライブラリを必要としません。
参考
- getimagesize() - 画像の大きさを取得する
- exif_imagetype() - イメージの型を定義する
- exif_read_data() - JPEG あるいは TIFF から EXIF ヘッダを読み込む
- exif_thumbnail() - TIFF あるいは JPEG 形式の画像に埋め込まれたサムネイルを取得する
image_type_to_mime_type
benshelock at gmail dot com
09-Mar-2009 07:08
09-Mar-2009 07:08
joshuamallory at yahoo dot com
04-Jun-2008 11:39
04-Jun-2008 11:39
<?php
print image_type_to_mime_type(IMAGETYPE_ICO);
// returns: application/octet-stream
?>
aidan at php dot net
11-Sep-2004 08:04
11-Sep-2004 08:04
This functionality is now implemented in the PEAR package PHP_Compat.
More information about using this function without upgrading your version of PHP can be found on the below link:
http://pear.php.net/package/PHP_Compat
