【发布时间】:2015-04-12 20:19:32
【问题描述】:
如何在 PHP 中测试 base64 字符串是否为有效图像?
我尝试了以下代码:
function convertAndSaveLogo($data, $id){
if(isset($data->base64_image) && $data->base64_image){
$imageData = base64_decode($data->base64_image);
if($imageData){
$source = imagecreatefromstring($imageData);
if($source){
imagepng($source, getcwd()."../dir/image/".$id.".png", 5);
imagedestroy($source);
}
}
}
}
但它不起作用。
【问题讨论】:
-
数据是数据 uri 还是只是 base64 编码的图像?
-
@Musa base64 字符串是用户提供的数据,我需要知道它是否是有效的编码图像
-
那你的函数不起作用怎么办?
-
@Musa 如果 base64 字符串是无效的编码图像,则函数 imagecreatefromstring 将抛出错误
-
所以它不应该抛出错误?