欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php socket 如何实现一个标准的writeInt

程序员文章站 2022-05-16 22:43:27
...
就是像java里一样。
主要我的目的是和java的对接
java这边要read:
DataInputStream stream = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
int l =  stream.readInt();

另外求下writeString或writeUTF
最后麻烦下,java端如果用 stream.readFully ,PHP端怎么办

回复内容:

就是像java里一样。
主要我的目的是和java的对接
java这边要read:

DataInputStream stream = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
int l =  stream.readInt();

另外求下writeString或writeUTF
最后麻烦下,java端如果用 stream.readFully ,PHP端怎么办

先使用pack将需要传输的转换为二进制格式,在通过socket_write发送即可。

可以简单模拟成

function writeInt($socket, $i)
{
    $data = pack('N', $i); // N 表示32位大端字节序
    socket_write($socket, $data);
}
相关标签: php