无法从套接字读取数据,无法绑定到 php 中的地址

2024-01-17

我有一个通过串口连接到客户端电脑的秤。客户端PC安装有SERPROXY。使用telnet xx.xx.xx.xx端口25003,成功显示数据。这意味着 SERPROXY 工作正常,并且路由器中的端口转发也正常完成。我将根据要求分享真实的公共IP,以便使用telnet查看数据。

我如何在网页上阅读并回显它?

以下代码在使用套接字绑定时失败?

 error_reporting(E_ALL);

// Server IP address
$address = "xx.xx.xx.xx";         // here goes the real public ip address 
// Port to listen
$port = 25003;

$mysock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

socket_bind($mysock,$address, $port) or die('Could not bind to address'); 
socket_listen($mysock, 5);
$client = socket_accept($mysock);

// read 1024 bytes from client
$input = socket_read($client, 1024);

echo $input ;

socket_close($client);
socket_close($mysock);

这是我第一次尝试套接字。它是否必须是强制双向通信,即 server.php 和 client.php ?否则套接字将无法工作。

有没有其他方法可以读取 php 网页中所述 IP 地址和端口的输出?

花了几个小时但没有运气。帮助将不胜感激。

注意:服务器托管在 bluehost 上。 socket_extensions 已启用并经过验证。

编辑:还与 bluehost 确认端口 25003 从他们这边开放。

编辑:也尝试过以下方式,但无济于事。

$fp = fsockopen("tcp://xx.xx.xx.xx", 25003, $errno, $errstr);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    while (!feof($fp)) {
        $weight = trim(fgets($fp, 64)," ");
    }
}
echo $weight;
 fclose($fp);

我哪里可能出错了?我完全走错路了吗?


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法从套接字读取数据,无法绑定到 php 中的地址 的相关文章

随机推荐