博客列表 >ThinkPHP5上传视频到阿里云(OSS)对象存储

ThinkPHP5上传视频到阿里云(OSS)对象存储

布丁
布丁原创
2020年09月14日 16:18:211955浏览

1、准备工作

(1)开通阿里云OSS服务
(2)从阿里云OSS开发文档指引下载 OSS PHP SDK,放到项目 extend 目录下

2、修改配置文件

开通OSS服务后把相应的配置项填写即可(这里是ThinkPHP5config.php

  1. 'aliyun_oss' => [
  2. 'accessKeyId' => '',
  3. 'accessKeySecret' => '',
  4. 'endpoint' => '',
  5. 'bucket' => '',
  6. 'cdn' => ''
  7. ]

3、代码部分

  1. use aliyun_oss\src\OSS\OssClient;
  2. use aliyun_oss\src\OSS\Core\OssException;
  3. public function uploadVideo()
  4. {
  5. //上传视频到阿里云OSS
  6. $file = $_FILES['file'];
  7. $name = $file['name'];
  8. $format = strrchr($name, '.');
  9. $fileName = uniqid() . $format;
  10. //获取配置
  11. $config = config('aliyun_oss');
  12. $OssClient = new OssClient($config['accessKeyId'], $config['accessKeySecret'], $config['endpoint']);
  13. $uploadToAliyunOss = $OssClient->uploadFile($config['bucket'], $fileName, $file['tmp_name']);
  14. if ($uploadToAliyunOss) {
  15. // 上传成功返回路径
  16. return json(['videoUrl'=> $config['cdn'].strrchr($uploadToAliyunOss['info']['url'], '/')]);
  17. } else {
  18. // 上传失败,打印错误信息
  19. halt($uploadToAliyunOss);
  20. }
  21. }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议