php - 我想让 php 继续监听套接字(php 套接字编程)
问题描述
我有一个使用 tcp 每 5 秒发送一次数据的设备,我正在使用 php 套接字编程
我的代码不工作这个代码什么也不打印,当我使用这个代码没有循环(while循环)然后它工作我想继续听我的客户每5秒发送的数据请帮助我......谢谢提前。
<?php
error_reporting(E_ALL);
set_time_limit (0);
$host = '103.21.XX.XX';
$port = 60000;
$con = 1;
$word = "";
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die(socket_strerror(socket_last_error()));
$result = socket_bind($socket, $host, $port) or die(socket_strerror(socket_last_error($socket)));
$result = socket_listen($socket) or die(socket_strerror(socket_last_error($socket)));
while ($con==1) {
# code...
$spawn = socket_accept($socket) or die("Could not accept incoming connection\n");
$input = socket_read($spawn, 2048) or die("Could not read input\n");
$input=(String)$input;
echo $input;
if ($input == 'exit')
{
$close = socket_close($sock);
$con = 0;
}
if($con == 1)
{
$word .= $input;
}
}
echo $word;
?>
解决方案
推荐阅读
- javascript - javascript 类中的画布
- matlab - 如何使用 MATLAB for 循环创建文件名并读取它们
- android - Flutter中滑动TabBarView()时如何改变Tabs()的形状?
- java - maven-dependency-plugin 和项目内依赖项
- networking - 根据其他变量创建权重变量以形成边
- r - 如何编写一个函数来计算r中数据框中某些列的平均值?
- django - 如何将“绘制标记”控件添加到传单地图和捕获事件?
- php - 检查文件是否在 10 分钟内更新(CRON)
- sql - 更新和比较薪水的存储过程
- aws-cdk - AWS CDK Bootstrap 未将文件发布到 s3