教えてください。ソケットをあけて、いま届いているデータをすべて受信するにはどうすれば良いのでしょうか。
$buf=socket_read($out,2048);
で読むことはできるのですが、データが2048byteに足りていないとここで処理がブロックされてしまい、
データが2048byteの倍数でないと必ず最後でとまってしまいます。
長さを1にすれば数万回の無限ループみたいになって処理が遅いし、
長さはともかくいま届いているデータを全て読む、ブロックしない読み込み方法が見当たらなかったです。

socket_recvというメソッドもあるみたいですが、ドキュメントもまだないし
これがない時代も当然できていたはずのことなので、きっとreadで何とかする方法があるんだと思いますが…。