backblaze b2
2.0.2
backblaze-b2是一个客户库,用于使用Backblaze的B2存储服务。它的目的是通过公开明确的API并受到您可能熟悉的其他SDK的影响来使使用服务尽可能容易。
此软件包将缓存1小时的授权请求,以免您从B2收到API限制。
此版本可与主密钥和应用程序密钥以及版本2一起使用(以下版本)。
这只是一个简短的例子,可以在Wiki上进行完整的例子。
use obregonco B2 Client ;
use obregonco B2 Bucket ;
$ client = new Client ( ' accountId ' , [
' keyId ' => ' your-key-id ' , // optional if you want to use master key (account Id)
' applicationKey ' => ' your-application-key ' ,
]);
$ client -> version = 2 ; // By default will use version 1
$ client -> domainAliases = [ // When you want to use your own domains (using CNAME)
' f0001.backblazeb2.com ' => ' alias01.mydomain.com ' ,
];
$ client -> largeFileLimit = 3000000000 ; // Lower limit for using large files upload support. Default: 3GB
// Returns a Bucket object.
$ bucket = $ client -> createBucket ([
' BucketName ' => ' my-special-bucket ' ,
' BucketType ' => Bucket:: TYPE_PRIVATE // or TYPE_PUBLIC
]);
// Change the bucket to private. Also returns a Bucket object.
$ updatedBucket = $ client -> updateBucket ([
' BucketId ' => $ bucket -> getId (),
' BucketType ' => Bucket:: TYPE_PUBLIC
]);
// Retrieve an array of Bucket objects on your account.
$ buckets = $ client -> listBuckets ();
// Delete a bucket.
$ client -> deleteBucket ([
' BucketId ' => ' 4c2b957661da9c825f465e1b '
]);
// Upload a file to a bucket. Returns a File object.
$ 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')
]);
// Download a file from a bucket. Returns the file content.
$ 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'
]);
// Delete a file from a bucket. Returns true or false.
$ fileDelete = $ client -> deleteFileFromArray ([
' FileId ' => $ file -> getId ()
// Can also identify the file via bucket and path:
// 'BucketName' => 'my-special-bucket',
// 'FileName' => 'path/to/file'
]);
// Retrieve an array of file objects from a bucket.
$ fileList = $ client -> listFilesFromArray ([
' BucketId ' => ' 4d2dbbe08e1e983c5e6f0d12 '
]);
// Create a new access key.
$ capabilities = new Capabilities()
$ key = $ client -> createKey ( $ accountId , $ name , new Capabilities (
[Capabilities:: DELETE_BUCKETS ,
Capabilities:: LIST_ALL_BUCKET_NAMES ,
Capabilities:: READ_BUCKETS ]
));
$ keyId = $ key -> getKeyId ();
$ applicationKeyId = $ key -> getApplicationKey ();
// Delete an existing access key.
try {
$ client -> deleteKey ( $ keyId );
} catch (RequestException $ e ) {
// $e->getCode()
}安装是通过作曲家:
$ composer require obregonco/backblaze-b2测试用phpunit进行。通过作曲家(正在开发)安装Phpunit之后:
$ vendor/bin/phpunit无论是报告问题,提出建议还是发送PRS,都可以随意做出贡献。 :)
LGPL。