Simple PHP library that allows you encode Protobuf Message to byte code. Additionally this library allows to encode/decode massage into single message. The implementation is based on this article.
syntax = "proto3";
package Your.Namespace;
message DummyMessage {
string Title = 1;
string Description = 2;
string CreatedAt = 3;
string UpdatedAt = 4;
}
vendor/bin/protobuf --include-descriptors -i . -o src/ DummyMessage.proto
$dummyMessage = Your\Namespace\DummyMessage::fromArray([
'Title' => 'Test 123',
'Description' => 'Description from the text',
'CreatedAt' => '2016-12-12 12:00:00',
'UpdatedAt' => '2016-12-12 13:00:00',
]);
$encoder = new ClearCode\Protobuf\ByteEncoder();
/** @var \Protobuf\Stream $stream */
$stream = $encoder->encode($dummyMessage);
file_put_contents(__DIR__ . '/dummyMessage.pb.bin', $stream);