微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP 将dataurl转成图片image方法总结

PHP 将dataurl转成图片image方法

使用canvas 生成图片,是使用dataurl的,PHP无法直接通过file_put_contents方法保存到本地电脑,需要做一下转码。

图片dataurl 如下

$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';

方法一:

通过正则提取出dataurl存储所需的数据,然后直接展示在页面

rush:PHP;"> if (!preg_match('/data:([^;]*);base64,(.*)/',$imgstr,$matches)) { die("error"); }

$content = base64_decode($matches[2]);
header('Content-Type: '.$matches[1]);
header('Content-Length: '.strlen($content));

echo $content;
die;

方法二:

如果仅仅是想保存图片到本地,可以用substr 和 strpos 方法

rush:PHP;">

$imgdata = substr($imgstr,strpos($imgstr,",") + 1);
$decodedData = base64_decode($imgdata);
file_put_contents('11.png',$decodedData );

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐