首页 > 解决方案 > 干预图像异常不可读异常:无法从给定的二进制数据初始化

问题描述

我目前正在从事网络抓取项目。基本上它会抓取产品图像,然后保存到 s3,然后从保存的 s3 图像 url 中创建一个缩略图。创建缩略图时出现此错误。在大多数情况下,它可以正常工作而没有问题,但是对于从某些网站上抓取的某些 s3 链接,则会出现此错误。

我仍然可以通过输入图像 url 从浏览器中查看图像文件。

//Thumbnail 



 'image'=>'' // image url 

 $base64_image = (string) Image::make(stripslashes($request->get('image')))
                ->encode('data-url');

任何帮助都将不胜感激。

编辑:似乎图像 url 没有被识别为和图像,因此我尝试从中进行编码file_get_contents,现在我可以看到输出$mf。但是我仍然收到错误消息。我什至尝试解码然后将其传递给Image::make()

$mf = base64_encode(file_get_contents($request->get('image')));
$base = base64_decode($mf);
$base64_image=Image::make($base);//error line

标签: phplaravelintervention

解决方案


推荐阅读