PHP上传图片或文件到阿里云OSS存储
一些图片使用比较多的项目,考虑到用户访问速度等,迁移到阿里云的OSS上面了,速度比ECS强了很多。
/** * 阿里云OSS上传 * @access public * @param string $object 阿里云OSS的存储路径,例如: images/www.imxh.cn.jpg * @param string $Path 服务器本地的文件路径,例如: /home/www/blparking/tmp/imxh.jpg * @param string $bucket 阿里云OSS的bucket名称,例如:blparking * @return bool */ //阿里云OSS存储 'aliyun_oss' => [ 'accessKeyId' => 'LTAI4G74VcrGfqzU2*****', 'accessKeySecret' => 'GtgYTJVBrOeW9pkAR5W9****', 'endpoint' => 'oss-cn-hangzhou.aliyuncs.com', 'bucket' => 'blparking', 'domain' =>'http://oss.data.imxh.cn', //自定义域名 'cdn' => '' ], function ossUpload($object,$Path,$bucket='blparking'){ $config = config('aliyun_oss'); if(!$bucket){ $bucket=$config['bucket']; } $oss=new \OSS\OssClient($config['accessKeyId'],$config['accessKeySecret'],$config['endpoint']); try{ $return=$oss->uploadFile($bucket, $object, $Path); $return['info']['myurl']=str_replace("http://blparking.oss-cn-hangzhou.aliyuncs.com",$config['domain'],$return['info']['url']); } catch(\Exception $e) { return $e->getMessage();//如果出错返回错误 } return $return; }
共 0 条评论