扫码阅读
手机扫码阅读
PHPMQTT v1.4.1 版本发布,新增协议调试工具
215 2023-07-18
PHPMQTT v1.4.1 版本发布,在此版本中主要是新增了一个协议调试工具。提供了 5 种方法来调试二进制数据,实际上就是一个二进制数据查看工具。
主要是将二进制数据转为 ASCII、十六进制的格式进行查看,可以用来调试 TCP、WebSocket、UDP 等。
public function hexDump(): string // 以16进制显示
public function hexDumpAscii(): string // 以16进制和相应的ASCII字符显示
public function printableText(): string // 可打印字符
public function hexStream(): string // 16进制流
public function ascii(): string // 以ASCII字符显示
使用
可以通过实例化Simps\MQTT\Tools\Debug
或者Simps\MQTT\Tools\Common
/Simps\MQTT\Tools\UnPackTool
静态调用:
实例化
use Simps\MQTT\Tools\Debug;
$debug = new Debug('0:simps-mqtt/user001/update{
"msg": "hello, mqtt"
}');
//$debug = (new Debug())->setEncode('0:simps-mqtt/user001/update{
// "msg": "hello, mqtt"
//}');
echo $debug->hexDump(), PHP_EOL;
echo $debug->hexDumpAscii(), PHP_EOL;
echo $debug->printableText(), PHP_EOL;
echo $debug->hexStream(), PHP_EOL;
echo $debug->ascii();
静态调用
use Simps\MQTT\Tools\UnPackTool;
echo UnPackTool::hexDumpAscii('0:simps-mqtt/user001/update{
"msg": "hello, mqtt"
}');
00000000 30 3a 73 69 6d 70 73 2d 6d 71 74 74 2f 75 73 65 0:simps-mqtt/use
00000010 72 30 30 31 2f 75 70 64 61 74 65 7b 0a 20 20 22 r001/update{. "
00000020 6d 73 67 22 3a 20 22 68 65 6c 6c 6f 2c 20 6d 71 msg": "hello, mq
00000030 74 74 22 0a 7d tt".}
在 Client 中使用
调用配置对象的setVerbose
方法,设置需要的调试级别即可。
更新日志
添加调试工具 (#56) 添加 mqtt 相关常量 (#58) 优化 CI (#60) (#61) (#64) 为 Client 添加调试工具 (#65)
原文链接:
http://mp.weixin.qq.com/s?__biz=MzAwOTgzNjY4MA==&mid=2247484247&idx=1&sn=d2fdc4e10f27a65df039a0028c3aff44&chksm=9b58c2b0ac2f4ba699f4c1f8f44294b1c7394e2a2f11ad7ecb74c6a55a77bf4910f289bb161b#rd
鲁飞的其他文章
JavaScript 如何实现在搜索中忽略变音符号
变音符号是指添加在字母上面的符号,以更改字母的发音或者以区分拼写相似词语。
如何获取指定CSDN博主的全部文章信息
本文说明了爬取 CSDN 作者文章的方法。
MQTT 怎么在单独一个端口上分别使用 v3.x 和 v5.0 协议解析?
在 1883 端口上,同时处理 v3.1、v3.1.1 和 v5.0 这 3 种协议等级
simps/mqtt:适用于 PHP 的 MQTT 协议解析和协程客户端
也许这是第一个支持 MQTT v5.0 协议的 PHP library…
编译安装PHP8和Swoole4
PHP8 在 6 月 25 号发布了 alpha1 版本,JIT 是大家最为关心的一个功能
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线