PHP基于socket实现客户端和服务端通讯功能


Posted in PHP onJuly 13, 2017

本文主要介绍了PHP基于socket实现的简单客户端和服务端通讯功能,可实现服务端接收客户端发送的字符串进行翻转操作后返回客户端的功能,需要的朋友可以参考下

服务端:

<?php
 set_time_limit(0);
 $host="localhost";
 $port=1001;
 //创建一个连接
 $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n");
 //绑定socket到端口
 $result=socket_bind($socket,$host,$port) or die("cannot bind port to socket\n");
 //开始监听这个端口
 $result=socket_listen($socket,4) or die("could not set up socket listen\n");
 //接受连接,另一个socket来处理通信
 $msgsock=socket_accept($socket) or die("cannot accept incoming connection\n");
 if($msgsock){
  echo date("Y-m-d H:i:s D a");
 }
 //读取客户端发送过来的信息
 $input=socket_read($msgsock,1024) or die("cannot read input\n");
 $input=trim($input);
 $output=strrev($input)."顺序反过来了吧\n";
 //对接收到的信息进行处理,然后返回到客户端
 socket_write($msgsock,$output,strlen($output)) or die("cannot write");
 //关闭socket连接
 socket_close($msgsock);
 socket_close($socket);
?>

客户端:

<?php
 set_time_limit(0);
 $host="localhost";
 $port=1001;
 //创建一个socket
 $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n");
 $conn=socket_connect($socket,$host,$port) or die("cannot connect server\n");
 if($conn){echo "client connect ok!";}
 socket_write($socket,"hello world!") or die("cannot write data\n");
 $buffer=socket_read($socket,1024,PHP_NORMAL_READ);
 if($buffer){
  echo "response was:".$buffer."\n";
 }
 socket_close($socket);
?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
FCKeditor添加自定义按钮
Mar 27 PHP
php 删除cookie和浏览器重定向
Mar 16 PHP
基于pear auth实现登录验证
Feb 26 PHP
ajax+php打造进度条代码[readyState各状态说明]
Apr 12 PHP
PHP源代码数组统计count分析
Aug 02 PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 PHP
推荐10个提供免费PHP脚本下载的网站
Dec 31 PHP
PHP扩展程序实现守护进程
Apr 16 PHP
深入理解PHP变量的值类型和引用类型
Oct 21 PHP
关于PHP 如何用 curl 读取 HTTP chunked 数据
Feb 26 PHP
php下载远程大文件(获取远程文件大小)的实例
Jun 17 PHP
微信公众号之主动给用户发送消息功能
Jun 22 PHP
php中请求url的五种方法总结
Jul 13 #PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 #PHP
php获取'/'传参的值简单方法
Jul 13 #PHP
php多文件打包下载的实例代码
Jul 12 #PHP
php实现网页端验证码功能
Jul 11 #PHP
阿里云PHP SMS短信服务验证码发送方法
Jul 11 #PHP
PHP实现阿里大鱼短信验证的实例代码
Jul 10 #PHP
You might like
PHP获取数组中某元素的位置及array_keys函数应用
2013/01/29 PHP
php获取文件类型和文件信息的方法
2015/07/10 PHP
PHP培训要多少钱
2017/06/06 PHP
PHP的PDO连接讲解
2019/01/24 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
10个实用的脚本代码工具
2010/05/04 Javascript
node.js中的fs.readlink方法使用说明
2014/12/17 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
js console.log打印对像与数组用法详解
2016/01/21 Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
2016/06/06 Javascript
使用vue.js2.0 + ElementUI开发后台管理系统详细教程(二)
2017/01/21 Javascript
前端MVVM框架解析之双向绑定
2018/01/24 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
2020/11/10 Javascript
[01:03]DOTA2新的征程 你的脚印值得踏上
2014/08/13 DOTA
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
Python的内存泄漏及gc模块的使用分析
2014/07/16 Python
Python中使用HTMLParser解析html实例
2015/02/08 Python
python写日志封装类实例
2015/06/28 Python
python中json格式数据输出的简单实现方法
2016/10/31 Python
Python变量和数据类型详解
2017/02/15 Python
Python入门_条件控制(详解)
2017/05/16 Python
python+mysql实现教务管理系统
2019/02/20 Python
Python判断对象是否相等及eq函数的讲解
2019/02/25 Python
Python对象转换为json的方法步骤
2019/04/25 Python
Python 在OpenCV里实现仿射变换—坐标变换效果
2019/08/30 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
Python count函数使用方法实例解析
2020/03/23 Python
Python3读取和写入excel表格数据的示例代码
2020/06/09 Python
CSS3的Border-radius轻松制作圆角
2012/12/24 HTML / CSS
英国领先的男士美容护发用品公司:Mankind
2016/08/31 全球购物
Yummie官方网站:塑身衣和衣柜必需品
2019/10/29 全球购物
创业计划实施的7大步骤
2014/02/05 职场文书
生产文员岗位职责
2014/04/05 职场文书
药剂专业自荐书
2014/06/20 职场文书
Java实战之用Swing实现通讯录管理系统
2021/06/13 Java/Android