我是套接字编程的新手,我刚刚开始使用多用户服务器脚本。如果我的回答是
,那么读取套接字会出现问题“A,某事或其他”
socket_read只给我“A”
知道为什么会这样吗?
if (false === ($input = socket_read($clients[$i], 2048, PHP_BINARY_READ))) {
答案 0 :(得分:0)
如果我没弄错的话,socket_read只会读取当前可用的数据,也许您的PHP运行速度比服务器套接字快(并且在数据可用之前尝试读取数据)。
您应该做的是在邮件中添加某种标题,表示预期邮件的长度。然后,你保持“socket_read”直到你读了那么多字节。