socket_write ソケットに書き込む &reftitle.description; intfalsesocket_write Socketsocket stringdata intnulllength&null; 関数 socket_write は、 data の内容をソケット socket に書き込みます。 &reftitle.parameters; socket data 書き込まれるバッファ。 length オプションのパラメータ length で、 ソケットに書き込むバイト数を指定することが可能です。 この値が data より大きい場合、自動的に data のサイズに切り詰められます。 &reftitle.returnvalues; ソケットへの書き込みに成功したデータのバイト数を返します。&return.falseforfailure;。 エラーコードは socket_last_error を用いて取得することができ、この値を socket_strerror に渡すことでエラー情報を文字列で取得可能です。 socket_write がゼロを返すことも十分ありえます。 これは、書き込むデータが存在しなかったことを意味します。 エラーをチェックするために &false; かどうかを調べる際には、必ず === 演算子を使用しましょう。 &reftitle.changelog; &Version; &Description; &sockets.changelog.socket-param; 8.0.0 length は、nullable になりました。 &reftitle.notes; socket_write は、data の内容を必ずしもすべて 書き込むとは限りません。ネットワークバッファの状態にもよりますが、 ある量のデータだけ、たとえば 1 バイトだけ書き込まれたのであったとしても、 そして data のサイズがそれより大きかったとしても、 それはエラーではなく正常な動作です。 そのため、data の残りが転送されたことを保証するには、 ループを使う必要があります。 &reftitle.seealso; socket_accept socket_bind socket_connect socket_listen socket_read socket_strerror