【发布时间】:2015-09-01 17:24:55
【问题描述】:
我想打开套接字并读取前 6 个字节。
$data = stream_socket_recvfrom($stream, 6);
但是如果客户端发送空字节,函数只读取数据的第一部分并停止读取。
{0x51, 0x01, 0x00, 0x11, 0x11, 0x11}
我只得到{0x51, 0x01}
在这种情况下如何读取所有 6 个字节?
谢谢
【问题讨论】:
-
你是如何设置流的? php 在字符串中不使用空终止符,所以它没有理由在空处停止。
-
创建我使用 stream_socket_server() 就像那里:github.com/reactphp/socket/blob/master/src/Server.php 我使用它类
-
@MarcB 你是对的。问题出在客户端的 C++ strlen 函数中。谢谢。