{site_name}

{site_name}

🌜 搜索

phpunpack() 是 PHP 语言中的一个函数,用于将二进制数据解包成 PHP 数组

php 𝄐 0
phpunpack
phpunpack() 是 PHP 语言中的一个函数,用于将二进制数据解包成 PHP 数组。它的参数包括一个格式化字符串和要解包的二进制数据,其返回值是一个包含解包后数据的关联数组。

下面是一个例子:

php
$data = pack('nvc*', 0x1234, 0x5678, 65, 66);
print_r(unpack('n2v1c2', $data));


这个例子中,pack() 函数将四个数据打包成二进制数据,其中 0x1234 和 0x5678 分别使用了两个字节(n),而 65 和 66 则分别使用了一个字节(c)。最后一个 * 表示使用默认字节顺序(little endian)。

unpack() 函数的第一个参数 n2v1c2 指定了解包后的数据类型和数量,其中 n2 表示两个无符号短整型(每个占用两个字节),v1 表示一个无符号短整型,c2 表示两个有符号字符。该参数与 pack() 函数中的格式化字符串相对应。

运行上述代码会输出以下结果:


Array
(
[v1] => 22136
[v2] => 22296
[c1] => A
[c2] => B
)


可以看到,unpack() 函数成功将二进制数据解包成了一个关联数组。