Php/docs/function.socket-sendto

提供:Dev Guides
< Php
移動先:案内検索

socket_sendto

(PHP 4 >= 4.1.0, PHP 5, PHP 7)

socket_sendto接続しているかどうかによらずソケットにメッセージを送信する


説明

socket_sendto ( resource $socket , string $buf , int $len , int $flags , string $addr [, int $port = 0 ] ) : int

関数 socket_sendto() は、 アドレス addrport を使用し、 buf からソケット socketlen バイトのデータを送信します。


パラメータ

socket

socket_create() で作成したソケットリソース。

buf

送信するデータが、buf から取り出されます。

len

buf から len バイト分のデータが送信されます。

flags

flags の値は、以下のフラグの任意の組み合わせを 論理 OR 演算子 (|) で連結したものとなります。

flags がとりうる値
MSG_OOB OOB(out-of-band: 帯域外)データを送信します。
MSG_EOR レコードにマークをつけます。

レコードでデータがそろいます。

MSG_EOF ソケットの送信側を閉じ、そのことを知らせる通知を送信データの最後に付加します。

トランザクションでデータがそろいます。

MSG_DONTROUTE ルータを使用せず、直接つながっているインターフェイスのみを使用します。
addr

リモートホストの IP アドレス。

port

port は、 データの送信先となるリモートホストのポート番号です。


返り値

socket_sendto() は、リモートホストに送信したバイト数を返します。 エラーが発生した場合は false を返します。


例1 socket_sendto() の例

<?php    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);    $msg = "Ping !";    $len = strlen($msg);    socket_sendto($sock, $msg, $len, 0, '127.0.0.1', 1223);    socket_close($sock);?>

参考

  • socket_send() - 接続したソケットにデータを送信する