Google API Core for PHP (gax-php) is a set of modules which aids the development of APIs for clients based on gRPC and Google API conventions.
Application code will rarely need to use most of the classes within this library directly, but code generated automatically from the API definition files in Google APIs can use services such as page streaming and retry to provide a more convenient and idiomatic API surface to callers.
gax-php currently requires PHP 5.6 or higher.
Contributions to this library are always welcome and highly encouraged.
See the CONTRIBUTING documentation for more information on how to get started.
This library follows Semantic Versioning.
This library 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.
All code lives under the src/ directory. Handwritten code lives in the
src/ApiCore directory and is contained in the Google\ApiCore
namespace.
Generated classes for protobuf common types and LongRunning client live under the src/ directory, in the appropriate directory and namespace.
Code in the metadata/ directory is provided to support generated protobuf classes, and should not be used directly.
These steps describe the dependencies to install for Linux, and equivalents can be found for Mac or Windows.
-
Install dependencies.
> cd ~/ > sudo apt-get install php php-dev libcurl3-openssl-dev php-pear php-bcmath php-xml > curl -sS https://getcomposer.org/installer | php > sudo pecl install protobuf
-
Set up this repo.
> cd /path/to/gax-php > cp ~/composer.phar ./ > php composer.phar install
-
Run tests.
> vendor/bin/phpunit --bootstrap tests/bootstrap.php tests
-
Updating dependencies after changing
composer.json
:> php composer.phar update `
-
Formatting source:
> vendor/bin/phpcbf -s --standard=./ruleset.xml > vendor/bin/phpcs -s --standard=./ruleset.xml
BSD - See LICENSE for more information.