NOTE:This repository is part ofGoogle Cloud PHP. Any
support requests, bug reports, or development contributions should be directed to
that project.
A high performance NoSQL database service for large analytical and operational workloads.
Installation
To begin, install the preferred dependency manager for PHP,Composer.
Now install this component:
$ composer require google/cloud-bigtable
This component supports both REST over HTTP/1.1 and gRPC. In order to take advantage of the benefits offered by gRPC (such as streaming methods)
please see ourgRPC installation guide.
Notable Client Differences
The handwritten client offered by this package differs from the others ingoogle-cloud-phpin that it more directly wraps our generated clients.
This means some of the idioms and configuration options you are used to may differ slightly. The most notable differences are outlined below:
A key file is now provided through thecredentialsconfiguration option as opposed to eitherkeyFileorkeyFilePath.
There is now more granular control over retry logic. Please seethebigtable_client_config.jsonfilefor an example of the configuration which can be passed into the client at construction time.
Exceptions triggered at the network level utilize the base classGoogle\ApiCore\ApiExceptionas opposed toGoogle\Cloud\Core\ServiceException.
TheauthHttpHandlerandhttpHandlerclient configuration options are now provided through$credentialsConfig['authHttpHandler']and$transportConfig['httpHandler'], respectively. Additionally, please note thehttpHandlershould now return an implementation ofGuzzle'sPromiseInterface.
Authentication
Please see ourAuthentication guidefor more information
on authenticating your client. Once authenticated, you'll be ready to start making requests.
When going through the authentication guide, please take note that the handwritten client for this package will more closely follow the conventions
outlined for the generated clients.
Sample
require 'vendor/autoload.php';
use Google\Cloud\Bigtable\BigtableClient;
$bigtable = new BigtableClient();
$table = $bigtable->table('my-instance', 'my-table');
$rows = $table->readRows();
foreach ($rows as $row) {
print_r($row) . PHP_EOL;
}
Debugging
Please see ourDebugging guidefor 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.
Please see themigration guideto upgrade fromV1of the library toV2.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["Version latestkeyboard_arrow_down\n\n- [2.17.1 (latest)](/php/docs/reference/cloud-bigtable/latest)\n- [2.17.0](/php/docs/reference/cloud-bigtable/2.17.0)\n- [2.16.0](/php/docs/reference/cloud-bigtable/2.16.0)\n- [2.15.0](/php/docs/reference/cloud-bigtable/2.15.0)\n- [2.14.0](/php/docs/reference/cloud-bigtable/2.14.0)\n- [2.13.0](/php/docs/reference/cloud-bigtable/2.13.0)\n- [2.12.0](/php/docs/reference/cloud-bigtable/2.12.0)\n- [2.11.1](/php/docs/reference/cloud-bigtable/2.11.1)\n- [2.9.1](/php/docs/reference/cloud-bigtable/2.9.1)\n- [2.8.0](/php/docs/reference/cloud-bigtable/2.8.0)\n- [2.7.0](/php/docs/reference/cloud-bigtable/2.7.0)\n- [2.6.3](/php/docs/reference/cloud-bigtable/2.6.3)\n- [2.5.0](/php/docs/reference/cloud-bigtable/2.5.0)\n- [2.4.0](/php/docs/reference/cloud-bigtable/2.4.0)\n- [2.3.0](/php/docs/reference/cloud-bigtable/2.3.0)\n- [2.2.1](/php/docs/reference/cloud-bigtable/2.2.1)\n- [2.1.0](/php/docs/reference/cloud-bigtable/2.1.0)\n- [2.0.1](/php/docs/reference/cloud-bigtable/2.0.1)\n- [1.32.1](/php/docs/reference/cloud-bigtable/1.32.1)\n- [1.31.1](/php/docs/reference/cloud-bigtable/1.31.1)\n- [1.30.0](/php/docs/reference/cloud-bigtable/1.30.0)\n- [1.29.2](/php/docs/reference/cloud-bigtable/1.29.2)\n- [1.28.3](/php/docs/reference/cloud-bigtable/1.28.3)\n- [1.27.0](/php/docs/reference/cloud-bigtable/1.27.0)\n- [1.26.2](/php/docs/reference/cloud-bigtable/1.26.2)\n- [1.25.0](/php/docs/reference/cloud-bigtable/1.25.0)\n- [1.24.1](/php/docs/reference/cloud-bigtable/1.24.1)\n- [1.23.0](/php/docs/reference/cloud-bigtable/1.23.0)\n- [1.22.2](/php/docs/reference/cloud-bigtable/1.22.2)\n- [1.21.1](/php/docs/reference/cloud-bigtable/1.21.1)\n- [1.20.3](/php/docs/reference/cloud-bigtable/1.20.3) \n\nGoogle Cloud Bigtable for PHP\n=============================\n\n\u003e Idiomatic PHP client for [Google Cloud Bigtable](https://cloud.google.com/bigtable/).\n\n[](https://packagist.org/packages/google/cloud-bigtable) [](https://packagist.org/packages/google/cloud-bigtable)\n\n- [API Documentation](https://cloud.google.com/php/docs/reference/cloud-bigtable/latest)\n\n**NOTE:** This repository is part of [Google Cloud PHP](https://github.com/googleapis/google-cloud-php). Any\nsupport requests, bug reports, or development contributions should be directed to\nthat project.\n\nA high performance NoSQL database service for large analytical and operational workloads.\n\n### Installation\n\nTo begin, install the preferred dependency manager for PHP, [Composer](https://getcomposer.org/).\n\nNow install this component: \n\n $ composer require google/cloud-bigtable\n\nThis component supports both REST over HTTP/1.1 and gRPC. In order to take advantage of the benefits offered by gRPC (such as streaming methods)\nplease see our [gRPC installation guide](https://cloud.google.com/php/grpc).\n\n### Notable Client Differences\n\nThe handwritten client offered by this package differs from the others in `google-cloud-php` in that it more directly wraps our generated clients.\nThis means some of the idioms and configuration options you are used to may differ slightly. The most notable differences are outlined below:\n\n- A key file is now provided through the `credentials` configuration option as opposed to either `keyFile` or `keyFilePath`.\n- There is now more granular control over retry logic. Please see [the `bigtable_client_config.json` file](https://github.com/googleapis/google-cloud-php/blob/main/Bigtable/src/V2/resources/bigtable_client_config.json) for an example of the configuration which can be passed into the client at construction time.\n- Exceptions triggered at the network level utilize the base class `Google\\ApiCore\\ApiException` as opposed to `Google\\Cloud\\Core\\ServiceException`.\n- The `authHttpHandler` and `httpHandler` client configuration options are now provided through `$credentialsConfig['authHttpHandler']` and `$transportConfig['httpHandler']`, respectively. Additionally, please note the `httpHandler` should now return an implementation of [Guzzle's `PromiseInterface`](https://github.com/guzzle/promises/blob/master/src/PromiseInterface.php).\n\n### Authentication\n\nPlease see our [Authentication guide](https://github.com/googleapis/google-cloud-php/blob/main/AUTHENTICATION.md) for more information\non authenticating your client. Once authenticated, you'll be ready to start making requests.\n\nWhen going through the authentication guide, please take note that the handwritten client for this package will more closely follow the conventions\noutlined for the generated clients.\n\n### Sample\n\n require 'vendor/autoload.php';\n\n use Google\\Cloud\\Bigtable\\BigtableClient;\n\n $bigtable = new BigtableClient();\n $table = $bigtable-\u003etable('my-instance', 'my-table');\n $rows = $table-\u003ereadRows();\n\n foreach ($rows as $row) {\n print_r($row) . PHP_EOL;\n }\n\n### Debugging\n\nPlease see our [Debugging guide](https://github.com/googleapis/google-cloud-php/blob/main/DEBUG.md)\nfor more information about the debugging tools.\n\n### Version\n\nThis component is considered GA (generally available). As such, it will not introduce backwards-incompatible changes in\nany minor or patch releases. We will address issues and requests with the highest priority.\n\nPlease see the [migration guide](./MIGRATING.md) to upgrade from **V1** of the library to **V2**.\n\n### Next Steps\n\nTake a look at and understand the [official documentation](https://cloud.google.com/bigtable/docs)."]]