PHP的Socket通信之UDP通信实例


Posted in PHP onJuly 02, 2015

本文实例讲述了PHP的Socket通信之UDP通信方法。分享给大家供大家参考。具体如下:

1.创建一简单的UDP服务器

//服务器信息 
$server = 'udp://127.0.0.1:9998'; 
//消息结束符号 
$msg_eof = "\n"; 
$socket = stream_socket_server($server, $errno, $errstr, STREAM_SERVER_BIND); 
if (!$socket) { 
  die("$errstr ($errno)"); 
} 
do { 
  //接收客户端发来的信息 
  $inMsg = stream_socket_recvfrom($socket, 1024, 0, $peer); 
  //服务端打印出相关信息 
  echo "Client : $peer\n"; 
  echo "Receive : {$inMsg}"; 
  //给客户端发送信息 
  $outMsg = substr($inMsg, 0, (strrpos($inMsg, $msg_eof))).' -- '.date("D M j H:i:s Y\r\n"); 
  stream_socket_sendto($socket, $outMsg, 0, $peer); 
} while ($inMsg !== false);

2.简单的客户端

function udpGet($sendMsg = '', $ip = '127.0.0.1', $port = '9998'){ 
  $handle = stream_socket_client("udp://{$ip}:{$port}", $errno, $errstr); 
  if( !$handle ){ 
    die("ERROR: {$errno} - {$errstr}\n"); 
  } 
  fwrite($handle, $sendMsg."\n"); 
  $result = fread($handle, 1024); 
  fclose($handle); 
  return $result; 
} 
$result = udpGet('Hello World'); 
echo $result;

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
删除及到期域名的查看(抢域名必备哦)
May 14 PHP
PHP 在线翻译函数代码
May 07 PHP
一步一步学习PHP(3) php 函数
Feb 15 PHP
深入php数据采集的详解
Jun 02 PHP
codeigniter教程之多文件上传使用示例
Feb 11 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
Jul 22 PHP
php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
Nov 06 PHP
php基于GD库画五星红旗的方法
Feb 24 PHP
Yii2中如何使用modal弹窗(基本使用)
May 30 PHP
PHP入门教程之表单与验证实例详解
Sep 11 PHP
PHP类型约束用法示例
Sep 28 PHP
PHP如何使用array_unshift()在数组开头插入元素
Sep 01 PHP
php三元运算符知识汇总
Jul 02 #PHP
PHP中foreach()用法汇总
Jul 02 #PHP
PHP.ini安全配置检测工具pcc简单介绍
Jul 02 #PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 #PHP
PHP中的命名空间详细介绍
Jul 02 #PHP
PHP+JS实现大规模数据提交的方法
Jul 02 #PHP
PHP中iconv函数知识汇总
Jul 02 #PHP
You might like
经典的星际争霸,满是回忆的BGM
2020/04/09 星际争霸
pdo中使用参数化查询sql
2011/08/11 PHP
PHP过滤黑名单关键字的方法
2014/12/01 PHP
PHP简单实现合并2个数字键数组值的方法
2017/05/30 PHP
Gambit vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
Aster vs KG BO3 第一场2.19
2021/03/10 DOTA
js模拟C#中List的简单实例
2014/03/06 Javascript
JavaScript插件化开发教程 (四)
2015/01/27 Javascript
javascript基于DOM实现权限选择实例分析
2015/05/14 Javascript
javascript判断回文数详解及实现代码
2017/02/03 Javascript
老生常谈js中0到底是 true 还是 false
2017/03/08 Javascript
AngularJS解决ng-if中的ng-model值无效的问题
2017/06/21 Javascript
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
微信小程序实现手势图案锁屏功能
2018/01/30 Javascript
layer弹出层取消遮罩的方法
2019/09/25 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
2019/10/10 jQuery
Python内置函数Type()函数一个有趣的用法
2015/02/18 Python
python使用matplotlib绘制折线图教程
2017/02/08 Python
Python通过matplotlib绘制动画简单实例
2017/12/13 Python
Linux下python制作名片示例
2018/07/20 Python
Python将文本去空格并保存到txt文件中的实例
2018/07/24 Python
python try except返回异常的信息字符串代码实例
2019/08/15 Python
python 实现端口扫描工具
2020/12/18 Python
Clarins娇韵诗美国官网:法国天然护肤品牌
2016/09/26 全球购物
探亲邀请信范文
2014/01/30 职场文书
《跟踪台风的卫星》教学反思
2014/04/10 职场文书
校园标语大全
2014/06/19 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
党的群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
2015年宣传部工作总结范文
2015/03/31 职场文书
2016年中秋节晚会领导致辞
2015/11/26 职场文书
全家福照片寄语怎么写?
2019/04/02 职场文书
小米11和iphone12哪个值得买?小米11对比iphone12评测
2021/04/21 数码科技
只需要100行Python代码就可以实现的贪吃蛇小游戏
2021/05/27 Python
一起来看看Vue的核心原理剖析
2022/03/24 Vue.js
Go gorilla/sessions库安装使用
2022/08/14 Golang