88 lines
2.8 KiB
Markdown
88 lines
2.8 KiB
Markdown
# Google Cloud Storage for PHP
|
|
|
|
> Idiomatic PHP client for [Cloud Storage](https://cloud.google.com/storage/).
|
|
|
|
[](https://packagist.org/packages/google/cloud-storage) [](https://packagist.org/packages/google/cloud-storage)
|
|
|
|
* [API documentation](https://cloud.google.com/php/docs/reference/cloud-storage/latest)
|
|
|
|
**NOTE:** This repository is part of [Google Cloud PHP](https://github.com/googleapis/google-cloud-php). Any
|
|
support requests, bug reports, or development contributions should be directed to
|
|
that project.
|
|
|
|
Allows world-wide storage and retrieval of any amount of data at any time. You can use Cloud Storage for a range of
|
|
scenarios including serving website content, storing data for archival and disaster recovery, or distributing large data objects to users via direct download.
|
|
|
|
### Installation
|
|
|
|
To begin, install the preferred dependency manager for PHP, [Composer](https://getcomposer.org/).
|
|
|
|
Now install this component:
|
|
|
|
```sh
|
|
$ composer require google/cloud-storage
|
|
```
|
|
|
|
### Authentication
|
|
|
|
Please see our [Authentication guide](https://github.com/googleapis/google-cloud-php/blob/main/AUTHENTICATION.md) for more information
|
|
on authenticating your client. Once authenticated, you'll be ready to start making requests.
|
|
|
|
### Sample
|
|
|
|
```php
|
|
require 'vendor/autoload.php';
|
|
|
|
use Google\Cloud\Storage\StorageClient;
|
|
|
|
$storage = new StorageClient();
|
|
|
|
$bucket = $storage->bucket('my_bucket');
|
|
|
|
// Upload a file to the bucket.
|
|
$bucket->upload(
|
|
fopen('/data/file.txt', 'r')
|
|
);
|
|
|
|
// Using Predefined ACLs to manage object permissions, you may
|
|
// upload a file and give read access to anyone with the URL.
|
|
$bucket->upload(
|
|
fopen('/data/file.txt', 'r'),
|
|
[
|
|
'predefinedAcl' => 'publicRead'
|
|
]
|
|
);
|
|
|
|
// Download and store an object from the bucket locally.
|
|
$object = $bucket->object('file_backup.txt');
|
|
$object->downloadToFile('/data/file_backup.txt');
|
|
```
|
|
|
|
### Stream Wrapper
|
|
|
|
```php
|
|
require 'vendor/autoload.php';
|
|
|
|
use Google\Cloud\Storage\StorageClient;
|
|
|
|
$storage = new StorageClient();
|
|
$storage->registerStreamWrapper();
|
|
|
|
$contents = file_get_contents('gs://my_bucket/file_backup.txt');
|
|
```
|
|
|
|
### Debugging
|
|
|
|
Please see our [Debugging guide](https://github.com/googleapis/google-cloud-php/blob/main/DEBUG.md)
|
|
for more information about the debugging tools.
|
|
|
|
### Version
|
|
|
|
This component is considered GA (generally available). As such, it will not introduce backwards-incompatible changes in
|
|
any minor or patch releases. We will address issues and requests with the highest priority.
|
|
|
|
### Next Steps
|
|
|
|
1. Understand the [official documentation](https://cloud.google.com/storage/docs).
|
|
2. Take a look at [in-depth usage samples](https://github.com/GoogleCloudPlatform/php-docs-samples/tree/master/storage/).
|