$path = ROOT_PATH . 'public/uploads/headimg'; $pic = base64_image_content($base64_image,$path); //图片路径 $type = str_replace('.','',strrchr($pic,'.')); //获取图片的类型 $image = str_replace('data:image/png;base64,', '', $base64_image); //base64转换 $image = str_replace(' ', '+', $image); $image = base64_decode($image); $img_url = Oss::ossUploadFile64($image,$type,$pic,'pSignatureImg'); //上传到oss上 //bases64图片保存到本地路径 $base64_image_content base64图片 $path 保存图片 public function base64_image_content($base64_image_content,$path){ //匹配出图片的格式 if (preg_match('/^(data:s*image/(w+);base64,)/', $base64_image_content, $result)){ $type = $result[2]; $new_file = $path."/"; if(!file_exists($new_file)){ //检查是否有该文件夹,如果没有就创建,并给予最高权限 mkdir($new_file, 0777,true); } $new_file = $new_file.microtime(true).rand(0,999).".{$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; } }