下面封装了一个将base64文件转成图片文件的方法
//第一个参数是base64文件内容,第二个参数是保存的图片路径
function base64_to_image($base64_image_content,$path){
//匹配出图片的格式
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
$type = $result[2];
$new_file = $path."/".date('Ymd',time())."/";
if(!file_exists($new_file)){
//检查是否有该文件夹,如果没有就创建,并给予最高权限
mkdir($new_file, 0755,true);
}
$new_file = $new_file.time().".{$type}";
if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
return '/'.$new_file;
}else{
return false;
}
}else{
return false;
}
}
//调用方式如下:(base64文件太长了,这里我省略了一部分)
echo base64_to_image("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYwAAAC21p19auSq5a0/Zaql==",'static/upload');
function base64_to_image($base64_image_content,$path){
//匹配出图片的格式
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
$type = $result[2];
$new_file = $path."/".date('Ymd',time())."/";
if(!file_exists($new_file)){
//检查是否有该文件夹,如果没有就创建,并给予最高权限
mkdir($new_file, 0755,true);
}
$new_file = $new_file.time().".{$type}";
if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
return '/'.$new_file;
}else{
return false;
}
}else{
return false;
}
}
//调用方式如下:(base64文件太长了,这里我省略了一部分)
echo base64_to_image("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYwAAAC21p19auSq5a0/Zaql==",'static/upload');