php 接收上传的data:image/png;base64图片数据,并存储
前端上传图片发送过来的图片数

后台接收处理方法
//base64图片上传
//base64_image_content base64图片编码
//$path 图片储存路径
function base64Img($base64_image_content,$path){
//匹配出图片的格式
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
$type = $result[2];
//验证图片格式
$allImg = array('gif','png','jpg','jpeg','JPG');
if(!in_array($type,$allImg)) return false;
if($type == 'jpeg'){$type = 'jpg';}
if(!file_exists($path)){
mkdir($path, 0777,true);//检查是否有该文件夹,如果没有就创建,并给予最高权限
}
$new_file = $path.uniqid().'.'.$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;
}
}如果需要判断上传的数据类型,可以根据以下类型判断
目前,Data URI scheme支持的类型有:
data:,文本数据
data:text/plain,文本数据
data:text/html,HTML代码
data:text/html;base64,base64编码的HTML代码
data:text/css,CSS代码
data:text/css;base64,base64编码的CSS代码
data:text/javascript,Javascript代码
data:text/javascript;base64,base64编码的Javascript代码
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
data:image/x-icon;base64,base64编码的icon图片数据