1

JPEGには最適ですが、GIFやPNGには機能しない単純な画像サイズ変更スクリプトがあります。最初のステップは、適切な画像タイプを取得して、それに応じて処理できるようにすることです。

私の質問は次のとおりです。getimagesize()はIMAGETYPEとMIME-typeの両方を返すようです...では、想像がJPEG、PNG、またはGIFのいずれであるかを判断するためにどちらを使用する必要がありますか?

PHPがこれを行う2つの方法を提供しているのは奇妙に思えますが、それぞれに指定された用途があると思いますか?

4

3 に答える 3

2

これは主に便宜上のものですが、複数の IMAGETYPE が同じ MIME タイプに対応する場合もあります。たとえばIMAGETYPE_JPC、、IMAGETYPE_JPXおよびIMAGETYPE_JB2すべての MIME タイプはapplication/octet-streamです。

イメージが JPEG、PNG、GIF のいずれであるかを判断するには、いずれかを使用できますが、通常は IMAGETYPE を使用します。

于 2012-06-08T15:53:55.010 に答える
1

ドキュメントによると:

mimeは、画像の対応するMIMEタイプです。この情報は、正しいHTTPContent-typeヘッダーで画像を配信するために使用できます

IMAGETYPEは有効な選択だと思います。

于 2012-06-08T15:48:52.510 に答える
0

あなたの質問が十分に明確かどうかはわかりませんが、単純な IF ステートメントを使用して最初に画像の種類を確認できないのはなぜですか?

たとえば、3 つの基本的な MIME タイプと画像サイズを 1 行で確認できます。

if ( (($_FILES["file"]["type"] == "image/gif") || 
     ($_FILES["file"]["type"] == "image/jpeg") || 
     ($_FILES["file"]["type"] == "image/png")) && 
     ($_FILES["file"]["size"] < 1000000) )
{    
// your re-size script    
} else {     
echo "Wrong image mime type!";   
}

MIME タイプのリストは次のとおりです: http://www.php.net/manual/en/function.mime-content-type.php#87856

于 2012-06-08T16:09:39.863 に答える