google/cloud-storage

Cloud Storage Client for PHP

Package info

github.com/googleapis/google-cloud-php-storage

pkg:composer/google/cloud-storage

Statistics

Installs: 98 309 617

Dependents: 129

Suggesters: 23

Stars: 342

v2.3.0 2026-06-02 19:05 UTC

Requires

Suggests

  • google/cloud-pubsub: May be used to register a topic to receive bucket notifications.
  • phpseclib/phpseclib: May be used in place of OpenSSL for creating signed Cloud Storage URLs. Please require version ^2.

Provides

None

Conflicts

None

Replaces

None

Apache-2.0 5717ca7a67c0cf9dd0c34dd7470af5a93447ea86

This package is auto-updated.

Last update: 2026-06-02 20:12:59 UTC


README

Idiomatic PHP client for Cloud Storage.

👁 Latest Stable Version
👁 Packagist

NOTE: This repository is part of 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.

Now install this component:

$ composer require google/cloud-storage

Authentication

Please see our Authentication guide for more information on authenticating your client. Once authenticated, you'll be ready to start making requests.

Sample

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

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 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.
  2. Take a look at in-depth usage samples.