現在、/tmp/jkhjkh78 などの一時的な場所に置かれているユーザーがアップロードした画像を取得し、そこから php 画像を作成して、形式を自動検出する方法を探しています。
これを行うには、imagefromjpeg、imagefrompng などでたくさんの試行/キャッチよりも賢い方法はありますか?
これはgetimagesizeの関数の 1 つです。彼らはおそらくそれを「getimageinfo」と呼ぶべきだったでしょうが、それはPHPです。
利用exif_imagetype()
可能な場合に使用..:
http://www.php.net/manual/en/function.exif-imagetype.php
phpをインストールすると、exif関数がデフォルトで利用可能になると確信しています(つまり、それらを具体的に含めるのではなく、具体的に除外する必要があります)
finfo_file()
どうやら の改良版である を試すことができmime_content_type()
ます。
編集:OK、getimagesize()
良いです..
必要に応じて、システム コマンドを呼び出すことができます (linux/unix を使用しているfile
場合)。
kender@eira:~$ file a
a: JPEG image data, EXIF standard 2.2
これにより、エクステンションと条件に基づく結果を知ることができます。
$image_file = ' http://foo.com/images.gif ';
$extension = substr($image_file, -4);
if($extension == ".jpg"){ echo 'JPG 画像です。'; } else { echo 'JPG 画像ではありません'; }