为什么imagecreatefromstring返回带有无效指针的资源?

时间:2017-10-06 15:02:31

标签: php gd flysystem

这是我的情景:

我收到了base64图片,我的目标是通过Flysystem库将jpg上传到S3。我在Symfony 3.3.9。

实际上,当我尝试使用writeStream方法时,我发现了这个错误。

  

ftell():提供的资源不是有效的流资源   /opt/project/vendor/league/flysystem/src/Util.php第250行

这是我的代码

$data = explode(',', $base64String, 2);

$relativePath = 'here/there.jpg';

$imageDecoded = base64_decode($data[1]);

$imageResource = imagecreatefromstring($imageDecoded);

$s3FileSystem->writeStream($relativePath, $imageResource,
['visibility' => AdapterInterface::VISIBILITY_PUBLIC,
 'mimetype' => 'image/jpeg',
]);

阅读ftell()的文档,它说

  

文件指针必须有效,并且必须成功指向文件   由fopen或popen打开。

如何避免此错误?我应该在将图像保存到文件之前并在使用之后将其保存吗?

BTW我试图保存图像并且它是正确的,所以没有损坏的数据。

0 个答案:

没有答案