博主信息
布丁
博文
5
粉丝
0
评论
0
访问量
301
积分:0
P豆:12

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

2020年09月14日 16:18:21阅读数:55博客 / 布丁/ ThinkPHP V5

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. }

全部评论

文明上网理性发言,请遵守新闻评论服务协议

条评论
  • PHP实现文件OSS的方法:首先创建空间“Bucket”;然后获取相关配置;接着创建“oss.php”类,并进行调用;最后配置nginx代理并访问oss域名地址即可。