public function setBaseToImg(Request $request){ ???????$base64_image_content = $request->get(‘imgBase64‘,‘imgBase64‘); ???????//匹配出图片的格式 ???????$preg = preg_match(‘/^(data:\s*image\/(\w+);base64,)/‘, $base64_image_content, $result); ???????if ($preg){ ???????????$type = $result[2]; ???????????$new_file = public_path(‘/html5/blessing/baseImg/‘); ???????????if(!file_exists($new_file)) ???????????{ ???????????????//检查是否有该文件夹,如果没有就创建,并给予最高权限 ???????????????mkdir($new_file, 0700); ???????????} ???????????$new_file = $new_file.time().uniqid().".{$type}"; ???????????if (file_put_contents($new_file, base64_decode(str_replace($result[1], ‘‘, $base64_image_content)))){ ????????????????return $new_file; ???????????}else{ ????????????????return false; ???????????} ???????} ???}
此处我用了Laravel框架自带方法,下面是原始方法,都可用
?public function setBaseToImg(){ ???????$base64_image_content = $_POST[‘imgBase64‘]; ???????//匹配出图片的格式 ???????$preg = preg_match(‘/^(data:\s*image\/(\w+);base64,)/‘, $base64_image_content, $result); ???????if ($preg){ ???????????$type = $result[2]; ???????????$new_file = ‘/html5/blessing/baseImg/‘; ???????????if(!file_exists($new_file)) ???????????{ ???????????????//检查是否有该文件夹,如果没有就创建,并给予最高权限 ???????????????mkdir($new_file, 0700); ???????????} ???????????$new_file = $new_file.time().uniqid().".{$type}"; ???????????if (file_put_contents($new_file, base64_decode(str_replace($result[1], ‘‘, $base64_image_content)))){ ????????????????return $new_file; ???????????}else{ ????????????????return false; ???????????} ???????} ???}
php 将base64转换成图片并保存 阿星小栈
原文地址:https://www.cnblogs.com/dereckbu/p/8376204.html