在 PHP 中解压缩已签名的 int32 小端序



我有一个二进制文件,我正在尝试解析。文件的一小部分有一组坐标(纬度和经度(。一个小例子如下:

$data = "64DA7300 0CD5DFFF";

我试图看到整数,但还没有运气。

$header = unpack("ilatitud/ilongitude", $data);
print_r($header);

我知道正确的数字应该是:(7592548, -2108148),但是结果是1094988854, 808465207

有什么想法吗?谢谢。

$data = "64DA7300 0CD5DFFF";

您的数据不是二进制的,而是十六进制编码的 ascii。首先将其设置为二进制:

$data = hex2bin(str_replace(" ", "", $data));

然后你的解包就会起作用。

最新更新