AliOssService.php 899 B

123456789101112131415161718192021222324252627282930
  1. <?php
  2. //阿里云oss上传
  3. namespace utils\oss;
  4. use think\facade\Log;
  5. use OSS\OssClient;
  6. use OSS\Core\OssException;
  7. class AliOssService
  8. {
  9. /**
  10. * 阿里云oss上传
  11. * @param array $tempFile 本地图片路径
  12. * @return string 图片上传返回的url地址
  13. */
  14. public static function upload($oss_settings,$tmpInfo){
  15. try {
  16. $isCName = strpos(trim($oss_settings['oss_domain']),'aliyuncs.com') > 0 ? false : true;
  17. $ossClient = new OssClient(trim($oss_settings['oss_accessKey']), trim($oss_settings['oss_secretKey']),trim($oss_settings['oss_domain']),$isCName);
  18. $result = $ossClient->uploadFile(trim($oss_settings['oss_bucket']),\utils\oss\OssService::setKey('01',$tmpInfo),$tmpInfo['tmp_name']);
  19. } catch (OssException $e) {
  20. log::error('阿里oss错误:'.print_r($e->getMessage(),true));
  21. throw new \Exception('上传失败');
  22. }
  23. return $result['info']['url'];
  24. }
  25. }