Javascript PHP套接字同时接收许多数据
我正在使用PHP和WebSocket(JavaScript)在客户端和服务器之间进行通信。这个过程是: -服务器启动客户端连接到的套接字。 -当服务器有新数据时,它会通知所有客户端。 -然后客户端反馈收到通知,服务器收到此信息,并且不会再次发送该信息。如果客户端在10秒后没有响应,服务器将再次发送 案例服务器一次向客户端服务器发送多条消息,客户端服务器不断应答服务器无法读取的数据。 或者当多个客户端同时应答时,服务器都不能读取数据 服务器使用函数“socket_recv”从客户端接收数据。 问题是如何在服务器中获取消息 详细代码:Javascript PHP套接字同时接收许多数据,javascript,php,sockets,Javascript,Php,Sockets,我正在使用PHP和WebSocket(JavaScript)在客户端和服务器之间进行通信。这个过程是: -服务器启动客户端连接到的套接字。 -当服务器有新数据时,它会通知所有客户端。 -然后客户端反馈收到通知,服务器收到此信息,并且不会再次发送该信息。如果客户端在10秒后没有响应,服务器将再次发送 案例服务器一次向客户端服务器发送多条消息,客户端服务器不断应答服务器无法读取的数据。 或者当多个客户端同时应答时,服务器都不能读取数据 服务器使用函数“socket_recv”从客户端接收数据。 问题
// Create socket and start listen
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_set_option($socket, SOL_SOCKET, SO_REUSEADDR, 1);
socket_bind($socket, 0, 1155);
socket_listen($socket);
while (true) {
// Check for new data and sent to all clients
..........
..........
// End of test data and sent
// Check if there are new data from the client
$changed = $clients;
socket_select($changed, $ null, $ null, 0, 10);
// Run through the client
foreach ($changed as $changed_socket) {
// Read the information sent to the client
while (socket_recv($changed_socket, $buf, 1024, 0)> = 1)
{
// Use of client information check up and remove the message was the reply of the client
}
}
sleep (1);
}
检查php手册我在socket_recv中尝试了许多选项,但都不起作用。