luppakorva/wasabi-storage

适用于 Laravel 7 更新的 wasabi 存储驱动程序

1.4 2020-09-08 23:49 UTC

This package is not auto-updated.

Last update: 2024-10-02 20:17:27 UTC


README

一个 Laravel 的 Wasabi 存储驱动程序。

此软件包使用 AWS S3 存储驱动程序,但将其更改为使用 Wasabi 端点。它应该以完全相同的方式工作并支持所有相同的功能。

  • 此分支是 Laravel 8 的更新。您可以通过使用版本 1.3 来找到 Laravel 7 兼容版本。

安装

composer require luppakorva/wasabi-storage

如果您正在使用 Laravel 5.4 或更早版本,请在 app.php 中注册服务提供者。

'providers' => [
    // ...
    luppakorva\Wasabi\WasabiServiceProvider::class,
]

如果您正在使用 Laravel 5.5 或更高版本,Composer 将会自动为您注册提供者。

在您的 filesystems.php 配置中添加一个新的磁盘。

'wasabi' => [
    'driver' => 'wasabi',
    'key' => env('WASABI_ACCESS_KEY_ID'),
    'secret' => env('WASABI_SECRET_ACCESS_KEY'),
    'region' => env('WASABI_DEFAULT_REGION', 'eu-central-1'),
    'bucket' => env('WASABI_BUCKET'),
    'root' => env('WASABI_ROOT', '/'),
],

使用

$disk = Storage::disk('wasabi');

// list all files
$files = $disk->files('/');

// create a file
$disk->put('avatars/1', $fileContents);

// check if a file exists
$exists = $disk->exists('file.jpg');

// get file modification date
$time = $disk->lastModified('file1.jpg');

// copy a file
$disk->copy('old/file1.jpg', 'new/file1.jpg');

// move a file
$disk->move('old/file1.jpg', 'new/file1.jpg');

// get url to file
$url = $disk->url('folder/my_file.txt');

// Set the visibility of file to public
$disk->setVisibility('folder/my_file.txt', 'public');


// See https://laravel.net.cn/docs/5.3/filesystem for full list of available functionality