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。