[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 メーリングリストの案内