junliuxian / ali-oss-storage
2.0.0
2018-01-31 04:40 UTC
Requires
- php: >=7.0
- aliyuncs/oss-sdk-php: ~2.0
- illuminate/support: ~5.0
- league/flysystem: ~1.0
This package is not auto-updated.
Last update: 2022-02-24 05:17:05 UTC
README
本项目是基于 jacobcyl/Aliyun-oss-storage 2.0.4 优化的衍生版本。让它更好地支持 Lumen
。
安装
-
使用
composer
快速安装- php 7.0 >=
composer require junliuxian/ali-oss-storage:~2.0
- php 5.5 >=
composer require junliuxian/ali-oss-storage:~1.0
-
在你的
config/filesystems.php
中,将config/oss.php
拷贝到disks
数组'disks' => [ // ... 'oss' => [ // config/oss.php ] ]
-
然后在
config/filesystems.php
中设置默认驱动'default' => 'oss'
-
注册服务提供者
-
laravel
: 在你的config/app.php
中添加以下行到providers
数组'providers' => [ // ... Junliuxian\AliOSS\AliOssServiceProvider::class, ]
-
lumen
: 在你的bootstrap/app.php
中添加以下行$app->register(Junliuxian\AliOSS\AliOssServiceProvider::class);
-
配置
名称 | 类型 | 描述 |
---|---|---|
access_id | 字符串 | 阿里云 OSS AccessKeyId |
access_key | 字符串 | 阿里云 OSS AccessKeySecret |
bucket | 字符串 | 阿里云 OSS 存储桶名称 |
endpoint | 字符串 | 阿里云 OSS 公网节点或自定义外域名 |
endpoint_internal | 字符串 | 阿里云 OSS 内网节点 |
prefix | 字符串 | 路径前缀 |
domain | 字符串 | 自定义域名绑定 |
ssl | 布尔值 | 启用或禁用 SSL |
debug | 布尔值 | 是否开启调试模式 |
API
Storage::disk('oss'); // if default filesystems driver is oss, you can skip this step
//fetch all files of specified bucket(see upond configuration)
Storage::files($directory);
Storage::allFiles($directory);
Storage::put('path/to/file/file.jpg', $contents); //first parameter is the target file path, second paramter is file content
Storage::putFile('path/to/file/file.jpg', 'local/path/to/local_file.jpg'); // upload file from local path
Storage::get('path/to/file/file.jpg'); // get the file object by path
Storage::exists('path/to/file/file.jpg'); // determine if a given file exists on the storage(OSS)
Storage::size('path/to/file/file.jpg'); // get the file size (Byte)
Storage::lastModified('path/to/file/file.jpg'); // get date of last modification
Storage::directories($directory); // Get all of the directories within a given directory
Storage::allDirectories($directory); // Get all (recursive) of the directories within a given directory
Storage::copy('old/file1.jpg', 'new/file1.jpg');
Storage::move('old/file1.jpg', 'new/file1.jpg');
Storage::rename('path/to/file1.jpg', 'path/to/file2.jpg');
Storage::prepend('file.log', 'Prepended Text'); // Prepend to a file.
Storage::append('file.log', 'Appended Text'); // Append to a file.
Storage::delete('file.jpg');
Storage::delete(['file1.jpg', 'file2.jpg']);
Storage::makeDirectory($directory); // Create a directory.
Storage::deleteDirectory($directory); // Recursively delete a directory.It will delete all files within a given directory, SO Use with caution please.
// upgrade logs
// new plugin for v2.0 version
Storage::putRemoteFile('target/path/to/file/jacob.jpg', 'http://example.com/jacob.jpg'); //upload remote file to storage by remote url
// new function for v2.0.1 version
Storage::url('path/to/img.jpg') // get the file url
文档
更多开发细节请查看 阿里云 OSS DOC
许可证
源代码在 MIT 许可证下发布。阅读 LICENSE 文件获取更多信息。