Comments (3)
The php-protobuf comes with a custom made proto parser which supports only a subset of proto syntax - this is why you're getting this informative error. If you would like to you can try out a work in progress branch https://github.com/allegro/php-protobuf/tree/plugin. It uses original protoc compiler. You run it as follows:
php protoc-php-gen.php gtfs-realtime-proto.proto
(Run with --help argument to see more options available.)
Run "composer install" before running this commnad in order to have all dependencies installed.
Generated classes are PSR-0 compliant. The option that might interest you is -Dnamespace that allows you to define a namespace to put your classes into:
php protoc-php-gen.php -Dnamespace=Foo\Bar gtfs-realtime-proto.proto
If you try it can you let me know how it worked for you?
from php-protobuf.
It worked great, thanks! The only change I had to make was adding quotes to the -D parameter
php protoc-php-gen.php -Dnamespace="Foo\Bar" gtfs-realtime-proto.proto
Otherwise it would concat the namespace and sub-namespace into one word.
You are doing some really interesting work. I like how you structured this as an official plugin to protoc, and are modeling Google's class structure for other generated languages. Who knows when Google will get around to adding a native PHP class generator, and the classes are unlikely to be structured as well as these are. You should reach out to Google and get them to throw some money at you!
from php-protobuf.
Great it worked for you! I'm glad you like it, thanks π
from php-protobuf.
Related Issues (20)
- How to generate the CodeGeneratorResponse.php file? HOT 2
- How to define namespace using protoc?
- Error while installation, step 3 Build and install the PHP extension. HOT 2
- ERROR: The protoc command in your system is too old. Minimum required version is 2.6.0 but found 2.5.0 HOT 1
- Does this extension have a Windows version HOT 1
- make: *** [protobuf.lo] Error 1 HOT 7
- 64-bit integers on x86 HOT 2
- Can it be encoded as a binary stream? HOT 1
- Why change null to another value? HOT 4
- read Protocol Buffers delimited HOT 2
- ERROR: Unable to find the protoc command. Please make sure it's installed and available in the path. HOT 1
- ERROR: protobuf module is not installed. --allegrophp_out: protoc-gen-allegrophp: Plugin failed with status code 1. HOT 5
- Does php-protobuf support extend HOT 1
- Add support for extensions
- --allegrophp_out: protoc-gen-allegrophp: Plugin failed with status code 127. HOT 10
- How do we send request and receive response with this? HOT 1
- Can't be compiled for > PHP 7 on Windows 7 x64 HOT 4
- one question --php_out: protoc-gen-php: Plugin output is unparseable: This is a stub file for IDEs, don't use it directly! HOT 1
- php8.0 ηΌθ―δΈζε HOT 1
- Macbook m1 chip php5.6.31 wrong HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from php-protobuf.