PHP base64格式图片上传到阿里云OSS
因为一个物联网项目硬件发送过来的数据是base64格式的图片,所以要先处理后再存储到OSS上面,这期间其实还可以对图片进行处理,如水印、大小等。
//阿里云OSS存储 'aliyun_oss' => [ 'accessKeyId' => 'LTAI4G74VcrGfqzU2*****', 'accessKeySecret' => 'GtgYTJVBrOeW9pkAR5W9****', 'endpoint' => 'oss-cn-hangzhou.aliyuncs.com', 'bucket' => 'blparking', 'domain' =>'http://oss.data.imxh.cn', //自定义域名 'cdn' => '' ],
/** * base64上传到阿里云OSS * @param unknown $base64_img base64流 * @param unknown $Path //保存路径 */ function base64_ossUpload($base64_img,$Path){ $config = config('aliyun_oss'); if(empty($base64_img))exit; $name = date("YmdHis",time()).mt_rand(100000,999999).".jpg"; $oss=new \OSS\OssClient($config['accessKeyId'],$config['accessKeySecret'],$config['endpoint']); try{ $return= $oss->putObject($config['bucket'],$Path.$name,base64_decode($base64_img)); $return['info']['ossurl']=str_replace("http://blparking.oss-cn-hangzhou.aliyuncs.com",$config['domain'],$return['info']['url']); return $return; }catch (\Exception $e){ return $e->getMessage(); } }
共 0 条评论