PHP基于socket实现的简单客户端和服务端通讯功能示例
时间:2019-03-30
本文章向大家介绍PHP基于socket实现的简单客户端和服务端通讯功能示例,主要包括PHP基于socket实现的简单客户端和服务端通讯功能示例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《php socket用法总结》、《php字符串(string)用法总结》、《PHP数学运算技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
- 不明恶意攻击致<搜狗搜索><搜索结果>跳转<百度搜索>技术原理分析
- Struts2 S2-052 RCE简单测试
- javaScript实现归并排序
- js粘贴事件paste简单解析及遇到的坑
- 学习zepto.js(对象方法)[6]
- Javascript 装饰器极速指南
- daterangepicker日历插件使用参数注意问题
- 学习zepto.js(对象方法)[5]
- js 停止事件冒泡 阻止浏览器的默认行为
- vue-cli生成的项目配置开发和生产环境不同的接口
- 【52ABP实战教程】0.1-- Devops如何用VSTS持续集成到Github仓库!
- 学习zepto.js(对象方法)[4]
- 事件绑定的几种常见方式
- vue的iview列表table render函数设置DOM属性值的方法
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- Keras 实现加载预训练模型并冻结网络的层
- Django-imagekit的使用详解
- Python类super()及私有属性原理解析
- Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
- 简单了解Python多态与属性运行原理
- 树莓派升级python的具体步骤
- keras中的loss、optimizer、metrics用法
- Django中F函数的使用示例代码详解
- 详解pandas获取Dataframe元素值的几种方法
- pandas数据处理之绘图的实现
- Pandas把dataframe或series转换成list的方法
- Django 构建模板form表单的两种方法
- 详解pandas.DataFrame.plot() 画图函数
- python中pandas库中DataFrame对行和列的操作使用方法示例
- PHP实现简易计算器功能