PHP 将dataurl转成图片image方法总结
PHP 将dataurl转成图片image方法
使用canvas 生成的图片,是使用dataurl的,php无法直接通过file_put_contents方法保存到本地电脑,需要做一下转码。
图片dataurl 如下
$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
方法一:
通过正则提取出dataurl存储所需的数据,然后直接展示在页面上
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 方法
$imgdata = substr($imgstr,strpos($imgstr,",") + 1); $decodedData = base64_decode($imgdata); file_put_contents('11.png',$decodedData );
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
一次选定数组中的每一个数,记下当前位置并假设它是从当前位置开始后面数中的最小数min=i,从这个数的下一个数开始扫描直到最后一个数,并记录下最小数的位置min,扫描结束后如果min不等于i,说明假设错误,则交换min与i位置上数。2011-08-08php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
shuffle与array_rand定义和用法,需要的朋友可以参考下。2011-10-10
最新评论