Skip to content
📼 A standard PHP SDK for backblaze b2 cloud files & storage system
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
tests
.gitignore
.scrutinizer.yml
.travis.yml
CHANGELOG.md
CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
composer.json
phpunit.hhvm.xml
phpunit.php
phpunit.xml

README.md

Backblaze B2 for PHP

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

backblaze-b2 is the SDK for working with Backblaze's B2 storage service.

Install

Via Composer

$ composer require gliterd/backblaze-b2

Usage

use BackblazeB2\Client;
use BackblazeB2\Bucket;

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

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

$options is optional. If omitted, the default timeout is 12 hours. The timeout allows for a long lived Client object so that the authorization token does not expire.

ApplicationKey is not supported yet, please use MasterKey only

Returns a bucket details

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

Change the bucket Type

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

List all buckets

$buckets = $client->listBuckets();

Delete a bucket

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

File Upload

$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')
]);

File Download

$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'
]);

File Delete

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

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

List all files

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

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

$ vendor/bin/phpunit

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please email mhetreramesh@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

You can’t perform that action at this time.