Laravel 专用阿里云 OSS 扩展包

因为工作中用到了 OSS ,所以封装了一下。写好有段时间了,今晚把 README 完善了下。有需要的朋友点个star:kissing_heart: 欢迎pull requestissue

Github:https://github.com/NauxLiu/Laravel-Oss

安装

添加依赖

添加

"naux/laravel-oss": "1.*"

到你的composer.json文件的require中,
执行composer installcomposer update

注册Provider

在你的 config/app.php文件 providers数组中中添加'Naux\LaravelOss\LaravelOssServiceProvider'

配置

执行命令php artisan config:publish naux/laravel-oss
然后到app/config/packages/naux/laravel-oss/config.php文件中按照注释修改配置。

实例

//删除bucket foo下的bar对象
OSS::bucket('foo')->delete('bar');

//上面选择了 bucket,后面的操作都不用重复

//上传请求中的文件
OSS::upload('foobar', Input::file('image'));

//取得directory目录下的所有对象信息
foreach(OSS::files('directory')){
    //do something
}

使用

获取原生OSSClient对象

OSS::getClient();

选择bucket

OSS::bucket('foo');

如果在配置文件中设置了default字段,就不需要选择

删除bucket

OSS::bucket('foo')->destroy();

创建新的bucket

OSS::create('foo');

//创建bucket同时设置权限
OSS::create('foo', 'public');

权限选项:

  1. private私有(默认)
  2. public-read公共读
  3. public-read-write 公共读写

获取所有bucket

//当前账号拥有的所有bucket
OSS::buckets();

上传文件

//根据路径上传文件
OSS::upload('foobar', '/temps/file');

//上传文件,同时设置其他信息
OSS::upload('foobar', '/temps/file', [
    'Expires' => new \DateTime("+5 minutes"),
    'Content-Type' => 'foo',
    //...
]);

//上传请求中的文件
OSS::update('foobar', Input::file('foobar'));

使用Input::file()上传的文件,会被自动设置ContentType

删除object

OSS::delete('object_key');

//同时删除多个
OSS::delete(['object_key1', 'object_key2']);

拷贝Object

OSS::copy('foo', 'bar');

//从当前的bucket拷贝到其他bucket
OSS::copy('foo', 'bar', 'another_bucket');

移动Object

OSS::move('foo', 'bar');

//从当前的bucket其他bucket并重命名
OSS::move('foo', 'bar', 'another_bucket');

获取所有Object列表

OSS::objects();

//方法声明
//public function objects($start = 0, $limit = 100, $prefix = '', $delimiter = ''){}

参数 参考文档

获取指定目录下Object列表

//获得temps目录下所有object列表
OSS::files('temps');
本帖已被设为精华帖!
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 5
(= ̄ω ̄=)··· 暂无内容!

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