,,php中socket的用法详解

,,php中socket的用法详解

这篇文章主要介绍了服务器端编程语言(专业超文本预处理器的缩写)中(电源)插座的用法,详细讲述了服务器端编程语言(专业超文本预处理器的缩写)进行(电源)插座通信的完整步骤,非常具有参考借鉴价值,需要的朋友可以参考下

本文实例详细讲述了服务器端编程语言(专业超文本预处理器的缩写)中(电源)插座的用法,分享给大家供大家参考。具体用法如下:

一、开启socket

phpinfo();查看是否开启了(电源)插座扩展,否则在php.ini中开启。

二、服务器端代码的写法

复制代码代码如下:服务器端编程语言(专业超文本预处理器的缩写)

错误报告(E _ ALL);

set _ time _ limit(0);

//ob _ implicit _ flush();

$ address=' 127。0 .0 .1 ';

$ port=10005

//创建端口

if(($ SOCK=socket _ create(AF _ INET,SOCK_STREAM,SOL_TCP))===false) {

echo 'socket_create()失败:原因:'。socket _ strerror(socket _ last _ error()).\ n ';

}

//绑定

if (socket_bind($sock,$address,$ port)==false){

echo"socket _ bind()失败:原因:""。socket _ strerror(socket _ last _ error($ sock)).\ n ';

}

//监听

if (socket_listen($sock,5)==false){

echo"socket _ bind()失败:原因:""。socket _ strerror(socket _ last _ error($ sock)).\ n ';

}

做{

//得到一个链接

if(($ msg sock=socket _ accept($ sock))===false){

echo 'socket_accepty()失败:原因:'。socket _ strerror(socket _ last _ error($ sock)).\ n ';

打破;

}

//欢迎发送到客户端

$ msg=' font color=' red ' server send:welcome/font br/';

socket_write($msgsock,$msg,strlen($ msg));

回声”读取客户端消息\ n ";

$buf=socket_read($msgsock,8192);

$ talk back=' received message:$ buf \ n ';

echo $对讲

if(false===socket _ write($ msg sock,$talkback,strlen($talkback))) {

echo 'socket_write()失败原因:'。socket _ strerror(socket _ last _ error($ sock)).\ n ';

}否则{

回显"发送成功";

}

socket _ close($ msg sock);

}而(真);

//关闭(电源)插座

socket _ close($ sock);

服务器端需要在硬币指示器(硬币水平指示器的缩写)命令行界面(批处理脚本的命令行界面)模式是执行,有可能硬币指示器(硬币水平指示器的缩写)命令行界面(批处理脚本的命令行界面)模式下php.ini文件载入的不一样

可以像如下输出:

这时候在卓克斯目录下就有个项目文本文件。查看配置文件(php.ini) Path=C:\WINDOWS。不是我的php.ini文件,这说明调用的php.ini文件时错误的。这时候我们要指定php.ini文件命令如下

注意的是我的服务器端编程语言(专业超文本预处理器的缩写)可以直接执行时配置了环境变量。

三、客户端

复制代码代码如下:服务器端编程语言(专业超文本预处理器的缩写)

//error _ reporting(E _ ALL);

回声”H2 TCP/IP连接/H2 \ n ";

$ service _ port=10005

$ address=' 127。0 .0 .1 ';

$socket=socket_create(AF_INET,SOCK_STREAM,SOL _ TCP);

if ($socket===false) {

echo 'socket_create()失败:原因:'。socket _ strerror(socket _ last _ error()).\ n ';

}否则{

回声好的. \ n ';

}

“回声”试图连接到端口" $服务端口"."上的”$ address”;

$result=socket_connect($socket,$address,$ service _ port);

if($result===false) {

echo 'socket_connect()失败% 22 \ n原因:($result).socket _ strerror(socket _ last _ error($ socket)).\ n ';

}否则{

回显”确定\ n”;

}

$ in=' HEAD/http/1.1 \ r \ n ';

美元在.=' HOST:localhost \ r \ n ';

美元在.='连接:关闭\ r \ n \ r \ n ';

$ out=

回声发送http头请求.';

socket_write($socket,$in,strlen($ in));

回显”确定\ n”;

“回声”读取响应:\ n \ n ";

while ($out=socket_read($socket,8192)) {

echo $ out

}

回声关闭插座.';

socket _ close($ socket);

回声好的“.\ n \ n”;

执行结果如下:

服务器:

客户:

希望本文所述对大家的服务器端编程语言(专业超文本预处理器的缩写)程序设计有所帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 使用php连接mysql数据库,php连接数据库的方法
  • 使用php连接mysql数据库,php连接数据库的方法,一文详解PHP连接MySQL数据库的三种方式
  • 七种php开发环境搭建工具有哪些,七种php开发环境搭建工具包括
  • 七种php开发环境搭建工具有哪些,七种php开发环境搭建工具包括,七种PHP开发环境搭建工具
  • php高并发三种解决方法,php 高并发解决方案
  • php高并发三种解决方法,php 高并发解决方案,PHP解决高并发问题(opcache)
  • php邮件发送的两种方式区别,php邮件发送的两种方式是什么
  • php邮件发送的两种方式区别,php邮件发送的两种方式是什么,php邮件发送的两种方式
  • php跳转页面的几种实现方法详解图,php跳转页面的几种实现方法详解视频
  • php跳转页面的几种实现方法详解图,php跳转页面的几种实现方法详解视频,PHP跳转页面的几种实现方法详解
  • PHP购物车,php立即购买和购物车功能
  • PHP购物车,php立即购买和购物车功能,php实现购物车功能(上)
  • php读取pdf数据,php pdf读取
  • php读取pdf数据,php pdf读取,PHP中使用mpdf 导出PDF文件的实现方法
  • php网站判断用户是否是手机访问的方法有哪些,php如何判断用户是否登录
  • 留言与评论(共有 条评论)
       
    验证码: