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 相关文章推荐
一个简单的自动发送邮件系统(三)
Oct 09 PHP
PHP 和 XML: 使用expat函数(二)
Oct 09 PHP
一道关于php变量引用的面试题
Aug 08 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
Jun 23 PHP
CI框架Session.php源码分析
Nov 03 PHP
php为字符串前后添加指定数量字符的方法
May 04 PHP
总结一些PHP中好用但又容易忽略的小知识
Jun 02 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
Nov 17 PHP
PHP封装的mysqli数据库操作类示例
Feb 16 PHP
thinkPHP5框架接口写法简单示例
Aug 05 PHP
关于Curl在Swoole协程中的解决方案详析
Sep 12 PHP
PHP7 foreach() 函数修改
Mar 09 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&amp;java(二)
2006/10/09 PHP
PHP 危险函数解释 分析
2009/04/22 PHP
用Simple Excel导出xls实现方法
2012/12/06 PHP
利用php的ob缓存机制实现页面静态化方法
2017/07/09 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
分享两个手机访问pc网站自动跳转手机端网站代码
2020/12/24 Javascript
jquery实现的美女拼图游戏实例
2015/05/04 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
使用bootstrap实现下拉框搜索功能的实例讲解
2018/08/10 Javascript
vue中的适配px2rem示例代码
2018/11/19 Javascript
js实现窗口全屏示例详解
2019/09/17 Javascript
[01:15:29]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第三局
2016/03/04 DOTA
python在windows下实现ping操作并接收返回信息的方法
2015/03/20 Python
用Python进行TCP网络编程的教程
2015/04/29 Python
Python脚本实现Web漏洞扫描工具
2016/10/25 Python
浅谈Scrapy框架普通反爬虫机制的应对策略
2017/12/28 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
2018/06/28 Python
使用pandas read_table读取csv文件的方法
2018/07/04 Python
Python 学习教程之networkx
2019/04/15 Python
python用for循环求和的方法总结
2019/07/08 Python
解决Python spyder显示不全df列和行的问题
2020/04/20 Python
Python实现扫码工具的示例代码
2020/10/09 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
波兰香水和化妆品购物网站:Notino.pl
2017/11/07 全球购物
美国排名第一的葡萄酒俱乐部:Firstleaf Wine Club
2020/01/02 全球购物
伦敦鲜花递送:Flower Station
2021/02/03 全球购物
Java平台和其他软件平台有什么不同
2015/06/05 面试题
信息专业个人的自我评价
2013/12/27 职场文书
施工安全标语
2014/06/07 职场文书
反对邪教标语
2014/06/30 职场文书
党的群众路线整改落实情况汇报
2014/10/28 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
公司趣味运动会开幕词
2016/03/04 职场文书
浅谈Nginx 中的两种限流方式
2021/03/31 Servers