3.2.1 PHP代码实现
创建一个文本文件,命名为helloworld.php,编辑代码如下:
<?php
//确保在连接客户端时不会超时
set_time_limit(0);
$host="192.168.130.90";
$port=8090;
//创建一个socket
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("socket_create() fail:".socket_strerror(socket_last_error())."\n");
//阻塞模式
socket_set_block($sock) or die("socket_set_block() fail:".socket_strerror(socket_last_error())."\n");
//绑定要监听的ip和端口,这里绑定的ip一定要写局域网ip,写成127.0.0.1客户端将无法与服务端建议连接
$result = socket_bind($sock, $host, $port) or die("socket_bind() fail:".socket_strerror(socket_last_error())."\n");
//开始监听
$result = socket_listen($sock, 10) or die("socket_listen() fail:".socket_strerror(socket_last_error())."\n");
echo "OK\nBinding the socket on $host:$port ... ";
echo "OK\nNow ready to accept connections.\nListening on the socket ... \n";
do{
$msgsock = socket_accept($sock) or die("socket_accept() failed: reason: ".socket_strerror(socket_last_error())."\n");
$sRead=socket_read($msgsock,1024);
echo "recvdata was:";
echo $sRead;
//开启新线程处理事件、话单或其他信息
socket_close($msgsock);
}while(true);
socket_close($sock);
?>
安装php环境如XAMPP Control Panel,启动apache和mysql,将helloworld.php保存到htdocs下,浏览器打开输入http://127.0.0.1/helloworld.php 即可运行,测试可用。