我正在尝试连接到服务器套接字,它会在连接后向我发送一堆数据,接受我的响应,然后再发送一堆数据,重复此过程,直到确定它已经足够了。
所以基本上,在第一次连接之后,我们将(并且当前)从服务器接收数据。我们想要获取这些数据,在另一个使用AJAX传递的脚本/程序中计算它,然后返回到此并响应服务器。
我们担心,一旦我们从服务器获取数据,去计算数据,套接字将关闭,我们将无法继续我们中断的地方。
我们如何确保php与此套接字的连接仍然存在?我已经研究了fsockopen,我对此并不十分了解,是否会有所帮助。有什么帮助吗?
// create socket
//$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
$socket = fsockopen($host, $port, $errno, $errstr, 30);
if (!$socket) {
echo "$errstr ($errno)<br />\n";
}
$_SESSION['socket'] = $socket;
// receive DATA from server
//$result = socket_connect($socket, $host, $port) or die("Could not connect to server\n");
echo "Connected to server";
//$_SESSION['connection'] = $result;\
//STOP, PASS DATA, COMPUTE, SEND RESPONSE
// send response to server
fwrite($socket, $message1) or die("Could not send data to server\n");
// get data server response
$result = fread ($socket, 1024) or die("Could not read server response\n");
echo "<br>Reply From Server :".$result;
// close socket
fclose($socket);