php 怎么发送原始包,使用WorkerMan时,如何获取原始包数据?

后端代码:

$worker = new Worker('tcp://0.0.0.0:12000');

$worker->onMessage = function ($connection, $message) {

var_dump($message);

// 输出Vv29705370U{"cmd":"cmd\_client\_query\_room\_req","node\_id":3149840,"third\_party\_id":2772311495771}

}

实际客服端发送的是二进制数据:

56760000 00000000 00000000 00323937 30353337 30000000 00000000 00550000 007b2263 6d64223a 22636d64 5f636c69 656e745f 71756572 795f726f 6f6d5f72 6571222c 226e6f64 655f6964 223a3331 34393834 302c2274 68697264 5f706172 74795f69 64223a32 37373233 31313439 35373731 7d00

这是一个特定格式的二进制,不同位数和长度需要按规则解析,但是 worker 获取到的 $message 是把 00 按空字符解析后的字符串,因此无法再按规则解析。请问如何才能获取到最原始的数据呢?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值