本篇文章给大家带来的内容是关于swoole创建udp服务器的方法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
udp_server.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);});// 启动服务器$serv->start();
udp服务器没有连接的概念,启动后客户端无需connect,直接可以向server监听的端口发送数据包。$clientinfo是客户端的相关信息
1.启动服务
$ /usr/local/php/bin/php udp_server.php
2.启动成功后,netstat查看
$ ps aux | grep php oosten 22944 0.0 2.2 314416 23220 pts/4 sl+ 10:49 0:00 /usr/local/php/bin/php udp_server.phpoosten 22945 0.0 0.4 240032 4084 pts/4 s+ 10:49 0:00 /usr/local/php/bin/php udp_server.phpoosten 22947 0.0 0.7 244732 7148 pts/4 s+ 10:49 0:00 /usr/local/php/bin/php udp_server.php
3.nc连接服务器
$ nc -u 127.0.0.1 9502 ###-u,使用udp传输协议helloserver hello
4.客户端发送数据包后,服务端打印$clientinfo数据
array(4) { ["server_socket"]=> int(3) ["server_port"]=> int(9502) ["address"]=> string(9) "127.0.0.1" ["port"]=> int(40635)}
5.结束进程
kill 22944
以上就是swoole创建udp服务器的方法(代码示例)的详细内容。