一、编写服务端脚本文件udp.php
<?php
//创建Server对象,监听 127.0.0.1:9502端口,类型为SWOOLE_SOCK_UDP
$serv = new swoole_server("127.0.0.1", 9502, SWOOLE_PROCESS, SWOOLE_SOCK_UDP);//监听数据接收事件
$serv->on('Packet', function ($serv, $data, $clientInfo) {$serv->sendto($clientInfo['address'], $clientInfo['port'], "Server ".$data);var_dump($clientInfo);echo $data;
});//启动服务器
$serv->start();
二、启动UDP服务
php udp.php
三、连接服务并发送数据
1.netcat 连接
netcat -u 127.0.0.1 9502
hello
Server: hello
2.写客户端脚本连接udp_client.php
<?php//连接swoole tcp服务
$client=new swoole_client(SWOOLE_SOCK_UDP);
if(!$client->connect("127.0.0.1",9502)){echo 'tcp连接失败';
};
//php cli 常量
fwrite(STDOUT,"请输入消息:");
$msg=trim(fgets(STDOUT));
//发送消息给tcp server服务器
$client->send($msg);
//接收来自server的数据
$result=$client->recv();
echo $result;
四、测试场景如下