我正在尝试使用 socket_recv 接收 HTTP 响应。我在响应大于 5000 字节时遇到问题。它停止接收;不抛出任何错误;大约 7000 字节,即使 Content-Length 清楚地表明响应比这大得多(25000 字节)。我做错了什么还是 PHP 套接字通常不稳定?
这是代码的相关部分:
while((socket_recv($this->socket, $buf, 1024, MSG_WAITALL)) > 0){
$this->fullResponse .= $buf;
}
if(!$this->fullResponse){
$errno = socket_last_error();
$errmsg = socket_strerror($errno);
echo $this->state = "{$errno} {$errmsg}";
return;
}