medoid/backblaze-b2

用于与Backblaze B2云存储交互的PHP SDK。

1.4.2 2020-08-22 10:31 UTC

README

Author Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

backblaze-b2是用于与Backblaze的B2存储服务交互的SDK。

安装

通过Composer

$ composer require medoid/backblaze-b2

用法

use BackblazeB2\Client;
use BackblazeB2\Bucket;

$options = ['auth_timeout_seconds' => seconds];

$client = new Client('accountId', 'applicationKey', $options);

$options是可选的。如果省略,则默认超时时间为12小时。超时允许客户端对象长时间存在,以便授权令牌不会过期。

ApplicationKey尚不支持,请仅使用MasterKey

返回存储桶详细信息

$bucket = $client->createBucket([
    'BucketName' => 'my-special-bucket',
    'BucketType' => Bucket::TYPE_PRIVATE // or TYPE_PUBLIC
]);

更改存储桶类型

$updatedBucket = $client->updateBucket([
    'BucketId' => $bucket->getId(),
    'BucketType' => Bucket::TYPE_PUBLIC
]);

列出所有存储桶

$buckets = $client->listBuckets();

删除存储桶

$client->deleteBucket([
    'BucketId' => 'YOUR_BUCKET_ID'
]);

文件上传

$file = $client->upload([
    'BucketName' => 'my-special-bucket',
    'FileName' => 'path/to/upload/to',
    'Body' => 'I am the file content'

    // The file content can also be provided via a resource.
    // 'Body' => fopen('/path/to/input', 'r')
]);

文件下载

$fileContent = $client->download([
    'FileId' => $file->getId()

    // Can also identify the file via bucket and path:
    // 'BucketName' => 'my-special-bucket',
    // 'FileName' => 'path/to/file'

    // Can also save directly to a location on disk. This will cause download() to not return file content.
    // 'SaveAs' => '/path/to/save/location'
]);

文件删除

$fileDelete = $client->deleteFile([
    'FileId' => $file->getId()

    // Can also identify the file via bucket and path:
    // 'BucketName' => 'my-special-bucket',
    // 'FileName' => 'path/to/file'
]);

列出所有文件

$fileList = $client->listFiles([
    'BucketId' => 'YOUR_BUCKET_ID'
]);

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

测试

$ vendor/bin/phpunit

贡献

有关详细信息,请参阅CONTRIBUTINGCONDUCT

安全

如果您发现任何与安全相关的问题,请通过电子邮件mhetreramesh@gmail.com而不是使用问题跟踪器。

鸣谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件