USharing
开放博客

PHP实现将base64编码字符串转换成图片示例

本文实例讲述了PHP实现将base64编码字符串转换成图片。分享给大家供大家参考,具体如下:

步骤:

1. 获取base64文件:

2. 设置生成的图片名字

$imageName = "25220_".date("His",time())."_".rand(1111,9999).'.png';

3. 判断是否有逗号 如果有就截取后半部分

if (strstr($image,",")){
 $image = explode(',',$image);
 $image = $image[1];
}

4. 设置图片保存路径

$path = "./".date("Ymd",time());

5. 判断目录是否存在 不存在就创建 并赋予777权限

if (!is_dir($path)){ //判断目录是否存在 不存在就创建
 mkdir($path,0777,true);
}

6. 拼接路径和图片名称

$imageSrc= $path."/". $imageName;

7. 生成图片 返回的是字节数

$r = file_put_contents($imageSrc, base64_decode($image));

8. 判断图片是否生成成功

if (!$r) {
 $tmparr1=array('data'=>null,"code"=>1,"msg"=>"图片生成失败");
 echo json_encode($tmparr);
}else{
 $tmparr2=array('data'=>1,"code"=>0,"msg"=>"图片生成成功");
 echo json_encode($tmparr2);
}

完整代码如下:

$image="data:image/jpg;base64,....."
$imageName = "25220_".date("His",time())."_".rand(1111,9999).'.png';
if (strstr($image,",")){
  $image = explode(',',$image);
$image = $image[1];
}
$path = "./".date("Ymd",time());
if (!is_dir($path)){ //判断目录是否存在 不存在就创建
  mkdir($path,0777,true);
}
$imageSrc= $path."/". $imageName; //图片名字
$r = file_put_contents($imageSrc, base64_decode($image));//返回的是字节数
if (!$r) {
 $tmparr1=array('data'=>null,"code"=>1,"msg"=>"图片生成失败");
 echo json_encode($tmparr);
}else{
 $tmparr2=array('data'=>1,"code"=>0,"msg"=>"图片生成成功");
 echo json_encode($tmparr2);
}

PS:这里再为大家提供几款比较实用的base64在线编码解码工具供大家使用:

BASE64编码解码工具:
http://tools.jb51.net/transcoding/base64

在线图片转换BASE64工具:
http://tools.jb51.net/transcoding/img2base64

Base64在线编码解码 UTF-8版:
http://tools.jb51.net/tools/base64_decode-utf8.php

Base64在线编码解码 gb2312版:
http://tools.jb51.net/tools/base64_decode-gb2312.php

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《php文件操作总结》、《PHP编码与转码操作技巧汇总》、《PHP中json格式数据操作技巧汇总》、《PHP数组(Array)操作技巧大全》、《PHP运算与运算符用法总结》及《php字符串(string)用法总结

来源:https://www.jb51.net/article/142437.htm

赞(0) 打赏
未经允许不得转载:USharing » PHP实现将base64编码字符串转换成图片示例

觉得文章有用就打赏一下文章作者

微信扫一扫打赏