socket怎么在php中使用-创新互联

这篇文章给大家介绍socket怎么在php中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

徐水网站建设公司创新互联公司,徐水网站设计制作,有大型网站制作公司丰富经验。已为徐水上千余家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的徐水做网站的公司定做!

一、开启socket


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

二、服务器端代码的写法

server send:welcome
"; socket_write($msgsock, $msg, strlen($msg)); echo 'read client message\n'; $buf = socket_read($msgsock, 8192); $talkback = "received message:$buf\n"; echo $talkback; if (false === socket_write($msgsock, $talkback, strlen($talkback))) {  echo "socket_write() failed reason:" . socket_strerror(socket_last_error($sock)) ."\n"; } else {  echo 'send success'; } socket_close($msgsock);} while(true);//关闭socketsocket_close($sock);?>

服务器端需要在cli模式是执行,有可能cli模式下php.ini文件载入的不一样

可以像如下输出:

socket怎么在php中使用

这时候在zhoxh目录下就有个tem.text文件。查看 Configuration File (php.ini) Path => C:\WINDOWS 。不是我的php.ini 文件,这说明调用的php.ini文件时错误的。这时候我们要指定php.ini文件命令如下

socket怎么在php中使用

注意的是我的php可以直接执行时配置了环境变量。

三、客户端


//error_reporting(E_ALL);
echo "

tcp/ip connection

\n";
$service_port = 10005;
$address = '127.0.0.1';

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
 echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
} else {
 echo "OK. \n";
}

echo "Attempting to connect to '$address' on port '$service_port'...";
$result = socket_connect($socket, $address, $service_port);
if($result === false) {
 echo "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";
} else {
 echo "OK \n";
}
$in = "HEAD / http/1.1\r\n";
$in .= "HOST: localhost \r\n";
$in .= "Connection: close\r\n\r\n";
$out = "";
echo "sending http head request ...";
socket_write($socket, $in, strlen($in));
echo  "OK\n";

echo "Reading response:\n\n";
while ($out = socket_read($socket, 8192)) {
 echo $out;
}
echo "closeing socket..";
socket_close($socket);
echo "ok .\n\n";
 
执行结果如下:
server:

socket怎么在php中使用

client:

socket怎么在php中使用

关于socket怎么在php中使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


标题名称:socket怎么在php中使用-创新互联
当前路径:http://scyanting.com/article/dsiocp.html