检查字符串是否为图像

时间:2012-05-19 08:46:03

标签: php image

有一个字符串格式的图像,输出带有一些mime类型标题的字符串就足以在页面上呈现它,如何检查该字符串是否是图像?

1 个答案:

答案 0 :(得分:10)

“成功时将返回图像资源。如果图像类型不受支持,数据不是可识别的格式,或者图像已损坏且无法加载,则返回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