Stanley Cheung 77c45eb042 remove opts param from signature 10 years ago
..
bin 2c9c76310e Support update metadata callback function in php BaseStub 10 years ago
ext aa11066573 Fixed memory leaks in PHP extension code 10 years ago
lib 2c9c76310e Support update metadata callback function in php BaseStub 10 years ago
tests 77c45eb042 remove opts param from signature 10 years ago
.gitignore ff7cdd3bad Use local .gitignore 10 years ago
README.md 5cdf37eb7b Removed execute permissions from README files. 10 years ago
composer.json 2db4ebdec9 Updated composer.json to version 0.5.0 10 years ago
composer.lock d506d55a08 Added composer file to PHP library 10 years ago

README.md

#Overview

This directory contains source code for PHP implementation of gRPC layered on shared C library.

#Status

Pre-Alpha : This gRPC PHP implementation is work-in-progress and is not expected to work yet.

LAYOUT

Directory structure is as generated by the PHP utility ext_skel

ENVIRONMENT

Install php5 and php5-dev.

To run the tests, additionally install php5-readline and phpunit.

Alternatively, build and install PHP 5.5 or later from source with standard configuration options.

To also download and install protoc and the PHP code generator.

apt-get install -y procps
curl -sSL https://get.rvm.io | sudo bash -s stable --ruby
git clone git@github.com:google/protobuf.git
cd protobuf
./configure
make
make install
git clone git@github.com:murgatroid99/Protobuf-PHP.git
cd Protobuf-PHP
rake pear:package version=1.0
pear install Protobuf-1.0.tgz

BUILDING

  1. In ./ext/grpc, run the command phpize (distributed with PHP)
  2. Run ./ext/grpc/configure
  3. In ./ext/grpc, run make and sudo make install
  4. In your php.ini file, add the line extension=grpc.so to load the extension at PHP startup.

PHPUnit

This repo now has PHPUnit tests, which can by run by executing ./bin/run_tests.sh after building.

There is also a generated code test (./bin/run_gen_code_test.sh), which tests the stub ./tests/generated_code/math.php against a running localhost server serving the math service. That stub is generated from ./tests/generated_code/math.proto.