一、php安装protobuf3
1.composer安装protobuf
composer require google/protobuf
2.下载protoc 编译器,用来将proto文件生成php文件
下载链接:https://github.com/protocolbuffers/protobuf/releases/download/v21.9/protoc-21.9-win64.zip
更多下载链接:https://github.com/protocolbuffers/protobuf/releases
下载解压后,把bin目录加入环境变量。
参考:
github:https://github.com/protocolbuffers/protobuf
官网参考文档:https://developers.google.com/protocol-buffers/docs/reference/php-generated?hl=zh-cn
二、简单使用
1.Messages
创建proto文件,person.proto文件
syntax = "proto3";
package test;
message Person {
string name = 1;
int32 id = 2;
string email = 3;
}
执行protoc --php_out=. person.proto生成php类。类的使用:
<?php
require_once 'vendor/autoload.php';
require_once 'Test/Person.php';
require_once 'GPBMetadata/Person.php';
$data=[
'name'=>'xdf',
'id'=>1,
'email'=>'dfjj@dfj.com',
];
$persion=new \Test\Person($data);
$res=$persion->serializeToString();
var_export($res);
$obj=new \Test\Person();
$obj->mergeFromString($res);
echo "\n";
var_export($obj->getName());
2 嵌套Messages
person.proto文件
syntax = "proto3";
package test;
message Person {