有一个字符串格式的图片,输出这个字符串加上一些mime类型的头就可以在页面上渲染了,如何判断这个字符串是不是图片?
最佳答案
“成功时将返回一个图片资源。如果图片类型不受支持,数据不是可识别的格式,或者图片已损坏且无法加载,则返回 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.';
}
?>
关于php - 检查字符串是否为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10663735/