6

文字列形式の画像があります。その文字列をいくつかの MIME タイプ ヘッダーとともに出力するだけで、ページにレンダリングするのに十分です。その文字列が画像かどうかを確認するにはどうすればよいですか?

4

1 に答える 1

11

「成功すると画像リソースが返されます。画像タイプがサポートされていない場合、データが認識された形式でない場合、または画像が破損していてロードできない場合は、FALSE が返されます。」

例:

<?php
$data = 'iVBORw0KGgoAAAANSUhEUgAAABwAAAASCAMAAAB/2U7WAAAABl'
       . 'BMVEUAAAD///+l2Z/dAAAASUlEQVR4XqWQUQoAIAxC2/0vXZDr'
       . 'EX4IJTRkb7lobNUStXsB0jIXIAMSsQnWlsV+wULF4Avk9fLq2r'
       . '8a5HSE35Q3eO2XP1A1wQkZSgETvDtKdQAAAABJRU5ErkJggg==';
$data = base64_decode($data);

$im = imagecreatefromstring($data);
if ($im !== false) {
    header('Content-Type: image/png');
    imagepng($im);
    imagedestroy($im);
}
else {
    echo 'An error occurred.';
}
?>

http://php.net/manual/en/function.imagecreatefromstring.php

于 2012-05-19T08:48:33.427 に答える