php保存base64编码图片的方法

雪花在空中嬉戏着、飞舞着,它净化了世间的一切尘埃,送走了严冬的寂寞,它自由地来,潇洒地去,多少著名的诗词都赞美过它: "忽如一夜春风来,千树万树梨花开 ",多么俏丽呀! "瑞雪兆丰年 ",它还是丰收的预言家呢!

写一个图片上传的插件,因为特殊性就在前台将图片转为base64编码并上传到后台,下面说一说在后台怎么利用php代码将base64编码格式的图片转成正常的图片,并保存的。

PHP保存Base64图片

php代码:

#  feiniaomy.com
//base64编码的图片信息流,类似 data:image/png;base64,sdfsdfsdfs...
$base_img = '';
//检查一下是否为base64的图片,这一步一定要做个检查
if(strpos($base_img ,'data:image') === false ){
echo '不是合法的base64编码的图片';
die();
}
//提取图片的类型
$fileext = str_replace('data:image/','',strstr($base_img ,';',true));
//检查图片类型的合法性
if(!in_array($fileext , ['jpg','png','gif','bmp'])){
$fileext = 'jpg';
}
//保存图片
#自定义保持图片的路径以及名称,保存的路径 + 名称 + 图片后缀
$filename = date("YmdHis").rand(10000, 99999).'.'.$fileext;
preg_match('/^(data:\s*image\/(\w+);base64,)/', $base_img, $result);
@file_put_contents($filename, base64_decode(str_replace($result[1], '', $base_img)));

以上就是关于php保持base64编码格式图片的方法,如果你还有好的建议,可以在下面评论发表出来!

您可能有感兴趣的文章
php get_magic_quotes_gpc()函数介绍与用法

php取消运行时间限制的方法

php中ini_set函数介绍

php获取文件夹下所有文件/文件夹

php如何实现文件下载的方法