gpt4 book ai didi

php - socket_recv 数据包缺少字节 PHP

转载 作者:可可西里 更新时间:2023-10-31 23:49:16 31 4
gpt4 key购买 nike

我试图在 PHP 上接收数据包,但看起来 socket_recv 丢失了一些字节。

我知道数据包发送成功:

0:13:58.951742 IP 192.168.0.101.1458 > 192.168.0.107.8000: Flags [P.], seq 1:7, ack 1, win 64240, length 6
0x0000: 4500 002e 631d 4000 8006 158c c0a8 0065 E...c.@........e
0x0010: c0a8 006b 05b2 1f40 6557 d628 4e87 cadd ...k...@eW.(N...
0x0020: 5018 faf0 e808 0000 0068 6f6c 6100 P........hola.

发送的数据是:0000 0068 6f6c 6100

但是惠特:

socket_recv($socket, $buffer, 100, 0);
echo bin2hex($buffer);
echo unpack("H*", $buffer);

我得到两个 echo :00686f6c6100

这意味着:

sended:  0000 0068 6f6c 6100
receive: 00 68 6f6c 6100

我做错了什么?

谢谢。

编辑:我发现了问题。是在代码上。谢谢!

最佳答案

尝试:

echo sprintf( "%02x", unpack("H*", $buffer));

不过,您可能必须先将字节分成两部分。 IE 我不确定 0x0000 是被翻译成 0x0 到 0(两次)还是 0x0000 到 00。

关于php - socket_recv 数据包缺少字节 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13744878/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com