如何在 Laravel 中使用阿里云 OSS

原文发表在我的个人网站:如何在 Laravel 中使用阿里云 OSS

阿里云提供了基于命名空间的 V2 版 SDK,但是文档不是很完整,使用门槛比较高,于是我封装了一个 Composer 包:https://github.com/johnlui/AliyunOSS

安装

将以下内容增加到 composer.json:

require: {
    "johnlui/aliyun-oss": "dev-master"
}

然后运行 composer update

使用

use JohnLui\AliyunOSS\AliyunOSS;

// 构建 OSSClient 对象
// 三个参数:服务器地址、阿里云提供的AccessKeyId、AccessKeySecret
$oss = AliyunOSS::boot('http://oss-cn-qingdao.aliyuncs.com',  $AccessKeyId, $AccessKeySecret);

// 设置 Bucket
$oss = $oss->setBucket($bucketName);

// 上传一个文件(示例文件为 public 目录下的 robots.txt)
// 两个参数:资源名称、文件路径
$oss->uploadFile('robots.txt', public_path('robots.txt'));

// 从服务器获取这个资源的 URL 并打印
// 两个参数:资源名称、过期时间
echo $oss->getUrl('robots.txt', new DateTime("+1 day"));

就是这么简单,喜欢可以去 Github上 Star 哦!

吕文翰
本帖已被设为精华帖!
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 11
Summer

@baocaixiong 刚刚发现, Emoji 和前面的字, 或者后面的字需要有一个空格 (至少一个), 如: :sheep: :sheep: , 否则的话就会变成::sheep::sheep: , 不是什么大问题啦.

10年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!