PHP处理base64编码图片

发布于:2020-08-08 16:23:08

/**
  * 处理base64编码格式的图片
  * @param $base64_image_content
  * @return mixed
  */
function saveBase64Image($base64_image_content){
      if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
          //图片后缀
          $type = $result[2];
          //保存位置--图片名
          $image_name=date('His').str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT).".".$type;
          $path= 'Uploads/image/';
          $this->mkdirs($path);
          $image_url = $path.uniqid().$image_name;
          $this->mkdirs($image_url);
          //解码
          $decode=base64_decode(str_replace($result[1], '', $base64_image_content));
          if (file_put_contents($image_url, $decode)){
              $data['code']=0;
              $data['imageName']=$image_name;
              $data['url']=$image_url;
              $data['msg']='保存成功!';
          }else{
              $data['code']=1;
              $data['imageName']='';
              $data['url']='';
              $data['msg']='图片保存失败!';
          }
      }else{
          $data['code']=1;
          $data['imageName']='';
          $data['url']='';
          $data['msg']='base64图片格式有误!';
      }
      return $data;
 }    //判断目录是否存在 不存在则创建
 function mkdirs($dir, $mode = 0777) {
     if (is_dir($dir) || @mkdir($dir, $mode)) return TRUE;
     if (!$this->mkdirs(dirname($dir), $mode)) return FALSE;
     return @mkdir($dir, $mode);
 }


阅读 100+

一片空白

父爱如山,不善表达。回想十多年前,总记得父亲有个宽厚的肩膀,小小的自己跨坐在上面,越过人山人海去看更广阔的天空,那个时候期望自己有一双翅膀,能够像鸟儿一样飞得高,看得远。虽然父亲有时会和自己开玩笑,但在做错事的时候会受到严厉的训斥。父亲有双粗糙的大手掌。