php使用sockets实现Modbus TCP串口通信

sockets文档地址:https://www.php.net/manual/zh/book.sockets.php

一:安装sockets拓展

1:windows安装sockets

找到php.ini文件,将下面这行注释即可

复制代码
extension=sockets

2:Linux安装sockets

复制代码
pecl install sockets

找到php.ini文件,增加下面这行即可

复制代码
extension=socket.so

3:docker安装

再docker容器中执行下面这行即可

复制代码
docker-php-ext-install sockets

二:sockets简单实现Modbus TCP信息报送

复制代码
$serverIP = 'XXX.XXX.XXX.XXX';  // Modbus TCP服务器IP
$serverPort = 8000;  // Modbus TCP服务器端口

// 创建TCP连接
$socket = \socket_create(AF_INET, SOCK_STREAM, SOL_TCP);


if ($socket === false) {
    die("socket_create() failed: reason: " . socket_strerror(socket_last_error()));
}
try {
    \socket_connect($socket, $serverIP, $serverPort);
} catch (\Exception $e) {
    die("无法连接到Modbus TCP服务器");
}
//请求报文
$request = 'XXXX';
//将报文转为十六进制字符串
$request = pack('H*', $request);
//发送请求报文
\socket_write($socket, $request);
// 接收响应报文
$response = \socket_read($socket, 2048);
//处理响应报文
$data = unpack('h*', $response);
// 关闭TCP连接
\socket_close($socket);
相关推荐
-dcr3 小时前
37.华为云网络类云服务
网络·vpn·vpc·elb·对等连接
东方隐侠安全团队-千里3 小时前
第4节 ARPANet 第一次意识到“密码不能明着传”
网络·安全·web安全
FreeBuf_4 小时前
QNAP紧急修复Pwn2Own 2025比赛中遭利用的7个0Day漏洞
网络·安全·web安全
上海云盾安全满满4 小时前
安全服务是什么
网络·安全
xixixi777775 小时前
内部网关协议——OSPF 协议(开放最短路径优先)(链路状态路由协议)
网络·智能路由器
大锦终5 小时前
【Linux】网络层与数据链路层中重点介绍
linux·运维·服务器·网络
FreeBuf_5 小时前
思科CCX软件曝高危RCE:攻击者可利用Java RMI和CCX Editor获取root权限
java·网络·安全
卓应6 小时前
路由协议的基础
网络·智能路由器
wxin_VXbishe6 小时前
springboot在线课堂教学辅助系统-计算机毕业设计源码07741
java·c++·spring boot·python·spring·django·php
老蒋新思维7 小时前
2025 创客匠人全球创始人 IP + AI 万人高峰论坛:破局创业困境,拥抱无限未来
大数据·网络·人工智能·网络协议·tcp/ip·创客匠人·知识变现