[PHP-users 17016]Re: UDPブロードキャストを受け取るには?
Osamu Shigematsu
m5issige @ mr.hitachi-medical.co.jp
2003年 7月 28日 (月) 22:29:52 JST
重松です。こんにちは。
> おおっと、例のネタでしょうか。ブロードキャストだから違うかな。
はい、例のネタです。(汗
> > TCP はたまに使うのですが、UDP は送るだけで受け取ったことがないので、
> > 受け取り方を調べているのですが、マニュアルを見た範囲では
> > 見つけられませんでした。
>
> こんな感じでどうでしょう。
>
> <?php
> $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
> if (!$sock) {
> die('socket_create error: ' . socket_strerror());
> }
>
> $port = 9988;
> $addr = '0.0.0.0';
>
> socket_bind($sock, $addr, $port);
> $buf = socket_read($sock, 100, PHP_BINARY_READ);
> ?>
ありがとうございます。
bind したら、いきなり socket_read() でいいんですね。
けど、UDP って、飛んでこなかったりするし、そういう時どうなるのかしら、
とか思ったりします。
PEAR も眺めてみたんですが、TCP の Server はあるけど、
UDP だとかはないですね?
--
Osamu Shigematsu <m5issige @ mr.hitachi-medical.co.jp>
PHP-users メーリングリストの案内