php udp发送和接收_63、php利用原生socket创建udp服务
1、案例函数汇总
2、案例
通过socket创建udp服务,获取对端的ip和port信息。并进行打印
2.1、udp服务源码
/**
* Copyright(C) Iamasb
* @project : 3、workerman相关知识点
* @explain : 原生socket创建创建udp服务
* @filename : socket_udp.php
* @author : Iamasb
*/
// 创建udp
if (!($resource = socket_create(AF_INET,SOCK_DGRAM, SOL_UDP))) {
echo "socket create is error";
exit();
}
// 绑定本地ip和端口
if (!socket_bind($resource,'0.0.0.0','1235')) {
echo "socket bind is error";
exit();
}
// 设置端口复用
if (!socket_set_option($resource, SOL_SOCKET, SO_REUSEADDR, 1)) {
echo 'Unable to set option on socket: '. socket_strerror(socket_last_error()) . PHP_EOL;
exit;
}
// 循环
while (1) {
$from = '';
$port = 0;
// 接收数据
socket_recvfrom($resource, $buf, 1024, 0, $from, $port);
echo "Received $buf from remote address $from and remote port $port" . PHP_EOL;
// 往对端发送数据
socket_sendto($resource,'iamasb',strlen('iamasb'),0,$from,$port);
}
2.2、启动udp服务
3、测试
通过编写udp客户端进行测试
3.1、udp客户端代码
if (!($resource = socket_create(AF_INET,SOCK_DGRAM, SOL_UDP))) {
echo "socket create is error";
exit();
}
$msg = "Ping !";
$len = strlen($msg);
socket_sendto($resource, $msg, $len, 0, '127.0.0.1', 1235);
$from = '';
$port = 0;
socket_recvfrom($resource, $buf, 1024, 0, $from, $port);
echo "Received $buf from remote address $from and remote port $port" . PHP_EOL;
socket_close($resource);
3.2、执行udp客户端
此时udp服务端的打印结果如下
php udp发送和接收_63、php利用原生socket创建udp服务相关推荐
- 25. Python语言 Web 开发 之 Socket 编程 · 第一章 UDP发送与接收数据
UDP发送与接收数据 本章主题 关键词 前导: 计算机网络的发展及基础网络概念 两台电脑的通信 IP地址介绍及分类 IP地址与IP协议 Windows 和 Linux 查看网卡信息 IP地址分类 以太 ...
- python应用系列教程——python使用socket创建udp服务器端和客户端
全栈工程师开发手册 (作者:栾鹏) python教程全解 python使用socket创建udp服务器端和客户端. 服务器端为一个时间戳服务器,在接收到客户端发来的数据后,自动回复. 客户端,等待用户 ...
- java udp 接受阻塞_Java UDP发送与接收
IP地址?端口号?主机名? 什么是Socket? 什么是UDP? 什么是TCP? UDP和TCP区别? 以上问题请自行百度,有标准解释,此处不再赘述,直接上干货! 实例: 发送端: public cl ...
- Linux系统下UDP发送和接收广播消息小例子
分类: 网络通信 2013-01-07 10:54 1336人阅读 评论(6) 收藏 举报 [cpp] view plaincopyprint? // 发送端 #include <iostrea ...
- php udp发送和接收_php socket通信(tcp/udp)实例分析
本文实例讲述了php socket通信(tcp/udp)方法.分享给大家供大家参考,具体如下: 注意 1.在socket_bind的时候ip地址不能真回环地址如127.0.0.1 2.server.p ...
- Linux系统下UDP发送和接收广播消息小样例
[cpp] view plaincopy // 发送端 #include <iostream> #include <stdio.h> #include <sys/sock ...
- [Java网络编程基础]UDP发送和接收数据
代码如下: package InetAddressPack;import java.io.IOException; import java.net.*; import java.nio.charset ...
- udp发送的数据存入MySQL_怎么把收到的UDP数据批量存储到数据库
展开全部 Transact-SQL 参考 BULK INSERT 以用户指定的格式复制一个数据文件至数据库e69da5e6ba9062616964757a686964616f3133336335383 ...
- 利用Linux主机创建NFS服务
创建2个Linux主机,一个作为NFS Server,一个作为Linux Client.用户使用oracle(UID和GID均设为54321),文件系统大小为1T. 主机 IP地址 NFS Serve ...
最新文章
- openresty获取nginx原始的请求头内容
- JAVA知识总结目录
- 13_线性回归分析、线性模型、损失函数、最小二乘法之梯度下降、回归性能评估、sklearn回归评估API、线性回归正规方程,梯度下降API、梯度下降 和 正规方程对比
- 【CKEditor】上传图片接口接收不到CKEditorFuncNum参数
- 华为机试——句子逆序
- 米筐量化不支持c语言_从零开始学量化(三):数据获取途径
- jboss 的debug启动4法
- 加权回归估计_比率估计与回归估计
- 【数据结构的魅力】003.算法归并与随机快排
- 小白学开发(iOS)OC_ SEL数据类型(2015-08-10)
- 如何在Mac网页中长截图?苹果电脑网页截图怎么截长图?
- 2020,2022年全年详细工作日、周末、节假日数据表sql
- Unity中的pingpong效果
- linux pt 客户端,下载工具系列——rTorrent (轻量级优秀BT/PT客户端)
- 计算机转换汉子英语,中英文切换(电脑怎么切换拼音打字)
- python爬取携程网游记_Python爬虫案例:爬取携程评论
- SQL两张表如何关联
- SQL注入的测试方法
- 跑腿php源代码,跑腿php
- Matlab软件实现算法运算
热门文章
- Oracle RAC学习笔记:基本概念及入门
- uva11361数位dp
- LeetCode-Spiral Matrix-螺旋矩阵
- 【数据结构与算法】【算法思想】【推荐系统】向量空间
- [Leedcode][JAVA][第542题][01矩阵][BFS]
- python 字符串截取_Python 字符串操作实现代码(截取/替换/查找/分割)
- java 存储空间_Java中的存储空间类型
- 空间留言软件_电脑硬盘空间提示不足,原来还可以这么做,真是学到老活到老...
- 797B. Odd sum
- mysql change index_MySQL · 引擎特性 · Innodb change buffer介绍