网站首页 语言 会计 电脑 医学 资格证 职场 文艺体育 范文

如何在PHP中处理Protocol Buffers数据

栏目: 网页设计 / 发布于: / 人气:2.35W

Protocol Buffers是Google定义的一种跨语言、跨平台、可扩展的数据传输及存储的协议,因为将字段协议分别放在传输两端,传输数据中只包含数据本身,不需要包含字段说明,所以传输数据量小,解析效率高。如何在PHP中处理Protocol Buffers数据呢?下面小编为大家解答一下,希望能帮到您!

如何在PHP中处理Protocol Buffers数据

如果想在PHP中使用Protocol Buffers,需要借助于第三方的扩展,使用方法如下。

 安装protoc编译器

第一步,安装Google的protoc编译器,这个工具可以把proto文件中定义的Message转换为各种编程语言中的类。下载release版本直接编译安装。

tar -xvzf

cd protobuf-2.5.0

./configure --prefix=/usr/local/protobuf

make && make install

下载地址()

安装PHP Plugin

第二步,安装protoc的 plugin,需要使用composer安装,感兴趣的可以访问

这个插件可以将proto文件转换到PHP文件,在PHP应用中引用后,可以将二进制格式的Protocol Buffers数据转换为PHP的对象

unzip

cd protoc-gen-php-master

curl -sS | php

php install

/usr/local/protobuf/bin/protoc --plugin=bin/protoc-gen-php --php_out=php_kingso -I. o

下载地址()

安装php-protocolbuffers

第三步,安装php-protocolbuffers,这是一个PHP扩展,在第二步中已经完成了proto文件到PHP文件的转换,但是对PHP对象的各种操作还需要这个扩展中的API方法

phpize

./configure

make && make install

然后在你的配置文件中添加

extension = ""

下载地址()

编写代码

第四步,借助上面提到的扩展的各种API方法,可以简单地get出自己需要的字段完成后续工作

require "....../"

$ks_result = KSResult::parseFromString($kingso_res);

$ks_result->get('xxx_name');