[扩展推荐]Laravel最好的Aliyun OSS Storage扩展

项目地址

alphasnow.github.io/aliyun-oss-laravel

安装方法

composer require alphasnow/aliyun-oss-laravel

快速使用

文件写入

Storage::disk('aliyun')->putFile('prefix/path', '/local/path/file.md');
Storage::disk('aliyun')->putFileAs('prefix/path', '/local/path/file.md', 'file.md');

Storage::disk('aliyun')->put('prefix/path/file.md', file_get_contents('/local/path/file.md'));
$fp = fopen('/local/path/file.md','r');
Storage::disk('aliyun')->put('prefix/path/file.md', $fp);
fclose($fp);

Storage::disk('aliyun')->putRemoteFile('prefix/path/file.md', 'http://example.com/file.md');

Storage::disk('aliyun')->prepend('prefix/path/file.md', 'Prepended Text'); 
Storage::disk('aliyun')->append('prefix/path/file.md', 'Appended Text');

文件查询

Storage::disk('aliyun')->url('prefix/path/file.md');
Storage::disk('aliyun')->temporaryUrl('prefix/path/file.md',3600);

Storage::disk('aliyun')->get('prefix/path/file.md'); 

Storage::disk('aliyun')->exists('prefix/path/file.md'); 
Storage::disk('aliyun')->size('prefix/path/file.md'); 
Storage::disk('aliyun')->lastModified('prefix/path/file.md');

文件操作

Storage::disk('aliyun')->copy('prefix/path/file.md', 'prefix/path/file_new.md');
Storage::disk('aliyun')->move('prefix/path/file.md', 'prefix/path/file_new.md');
Storage::disk('aliyun')->rename('prefix/path/file.md', 'prefix/path/file_new.md');

文件删除

Storage::disk('aliyun')->delete('prefix/path/file.md');
Storage::disk('aliyun')->delete(['prefix/path/file1.md', 'prefix/path/file2.md']);

文件夹操作

Storage::disk('aliyun')->makeDirectory('prefix/path'); 
Storage::disk('aliyun')->deleteDirectory('prefix/path');

// 查询一级子目录文件
Storage::disk('aliyun')->files('prefix/path');
// 递归查询多级子目录文件
Storage::disk('aliyun')->allFiles('prefix/path');

// 查询一级子目录
Storage::disk('aliyun')->directories('prefix/path'); 
// 递归查询多级子目录
Storage::disk('aliyun')->allDirectories('prefix/path'); 

阿里云OSS文档

主要参考

本作品采用《CC 协议》,转载必须注明作者和本文链接
转载请告知
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 10

看着很方便啊,尝试下

2个月前 评论
悠悠山雨 (楼主) 2个月前
jcc123

不错 :+1:

2个月前 评论
jcc123

看着和 Aliyun-oss-storage 没啥区别啊

2个月前 评论
悠悠山雨 (楼主) 2个月前
小李世界

在用其他的,后面观察下,可以再切换

2个月前 评论

@jcc123 原扩展不更新了 这个扩展是基于 Aliyun-oss-storage
主要是bug修复 与 逻辑调整
后期会附加更多功能
可以多关注下

2个月前 评论

@小李世界 在使用那个扩展? 我之前也找了一遍 没发现合适的轮子 才开始自己造

2个月前 评论
小李世界 2个月前
悠悠山雨 (作者) (楼主) 2个月前
小李世界 2个月前

不错,支持一波,之前用的iidestiny/laravel-filesystem-oss有BUG,一直没修复,只能用兼容方案来做。

2个月前 评论
myhui0926

大神,这个支持文件分片上传吗?我之前用的阿里云oss扩展,分片上传会失败。

2个月前 评论
悠悠山雨 (楼主) 2个月前
myhui0926 (作者) 2个月前
leirhy

看起来还不支持多桶上传啊,虽然可以通过不同配置来做到。

2个月前 评论
悠悠山雨 (楼主) 2个月前

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