socket_read 和 socket_recv 之间有什么区别?我正在尝试使用PHP套接字但我使用 socket_read 发出此警告:
socket_read(): unable to read from socket [10057]
这是编码的代码:
$strData = socket_read($resSock, 65536, PHP_BINARY_READ);
现在,当我使用 socket_recv 时,我收到此警告:
socket_recv(): unable to read from socket [0]
这就是这句话:
socket_recv($resSock, $strData, 65536, 0);
请帮帮我吧!
答案 0 :(得分:3)
socket_recv
允许您提供额外的标志。 socket_read()
相当于使用socket_recv()
调用flags = 0
。 socket_read()
还允许您指定PHP_NORMAL_READ
,它只读取下一个换行符(因此它等同于fgets()
)。
他们的名字也略有不同。 socket_read()
返回数据; socket_recv()
将变量作为引用参数并更新它,返回读取的字节数。