这是关于如何处理从网络套接字接收到的前缀消息的后续问题。我尝试做的是:
- 读取前 4 个字节(即 $prefix,代表消息的长度)
- 检查 $prefix 是否真的有 4 个字节的大小以及它是否是一个整数
- 使用 $prefix 的长度读取完整的 $message
- 检查消息是否真的有 $prefix 字节的大小
到目前为止,我有以下两行代码:
$prefix = socket_read($socket, 4, PHP_BINARY_READ); //No 1.
//No 2: how to do the checks?
$message = socket_read($socket, $prefix, PHP_BINARY_READ); //No 3.
//No 4: how to do the checks?
我该如何进行上述检查?
一点旁注:通过网络套接字连接发送的所有数据都是UTF8,little-endian