无法从给定的二进制数据初始化

时间:2015-05-19 19:11:05

标签: php laravel-5 base64

我正在尝试使用Intervention Image保存base64编码的图像,laravel-5 Exception告诉我“无法从给定的二进制数据初始化”。 谁有人可以帮忙?

$png_url = "user-".time().".png";
$path = "/public/".$png_url;
Image::make(base64_encode($request['image']))->save($path);

2 个答案:

答案 0 :(得分:5)

<?php
$png_url = "user-".time().".png";
$path = "/public/".$png_url;
$base=base64_decode($request['image']);
Image::make($base)->save($path);
?>

答案 1 :(得分:0)

如果您的代码在本地主机上运行良好,并且您上载到实时服务器,则遇到此类错误,有时是Windows服务器和ubuntu / etc服务器上的路径问题引起的。

就我而言,我将路径中的所有\更改为/

也就是说:

Image::make(base64_decode($request['profile_pic']))->save(public_path('cdn\profile_pictures\/'.$imageName))->destroy();

Image::make(base64_decode($request['profile_pic']))->save(public_path('cdn/profile_pictures//'.$imageName))->destroy();

希望这可以帮助某人...编码愉快...