研究了一下PHP和C++socket通讯,用C++作为服务器端,php作为客户端进行.
socket通讯是基于协议的,因此,只要双方协议一致就行.
关于协议的选择:我看过网上大部分协议都是在应用层的协议,选用这样的协议很方便,基本上就是字符串传过来,传过去
本次研究的协议算是当今国际化的一个标准做法.length+flag+body(长度+类型+内容)的方式,
total_length | code | flag | length1 | string1 | length2 | string2 |
---|---|---|---|---|---|---|
总长度 | 操作类型 | 标志 | 字符串1长度 | 字符串1 | 字符串2长度 | 字符串2 |
4字节 | 2字节 | 4字节(暂时无用) | 2字节 | x字节 | 2字节 | x字节 |
php实现方式,也很容易,通过pack打包成二进制进行通讯.下面贴一下代码