方法:
$fp = fsockopen($server, $port, $errno, $errstr ,30);
fputs($fp, $send_all);
stream_set_timeout($fp, 30);
$result = '';
while(!feof($fp)) {
$result.= fgets($fp,1024);
}
print_r($result);
这样虽然能取到数据,可太慢了,得二十多秒。
有其它方法能读到数据吗?不要用fread,用fread取不到完整数据。
------解决方案--------------------
fgets, fread都是不直接参与连接的。数据包到达后会存放在缓冲区,他们读的是本机的缓冲区,所以不会影响速度。