这篇文章主要介绍了服务器端编程语言(专业超文本预处理器的缩写)中(电源)插座的用法,详细讲述了服务器端编程语言(专业超文本预处理器的缩写)进行(电源)插座通信的完整步骤,非常具有参考借鉴价值,需要的朋友可以参考下
本文实例详细讲述了服务器端编程语言(专业超文本预处理器的缩写)中(电源)插座的用法,分享给大家供大家参考。具体用法如下:
一、开启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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。