socket_recv を使用して HTTP 応答を受信しようとしています。5000 バイトを超える応答に問題があります。受信を停止します。エラーをスローすることなく; Content-Length は応答がそれよりもはるかに大きいことを明確に示していますが (25000 バイト)、約 7000 バイトです。私は何か間違ったことをしていますか、それとも 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;
}