这里有新鲜出炉的 PHP 教程,程序狗速度看过来!
PHP(外文名: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言。语法吸收了 C 语言、Java 和 Perl 的特点,入门门槛较低,易于学习,使用广泛,主要适用于 web 开发领域。PHP 的文件后缀名为 php。
这篇文章主要介绍了 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);
来源: http://www.phperz.com/article/17/0804/342031.html