PHP 中的 unpack() 函数
unpack() 函数用于解压缩二进制字符串中的数据。
语法
unpack(format, data)
参数
format − 使用的格式。以下是可能的取值:
a − 用 NUL 填充的字符串
A − 用空格填充的字符串
h − 十六进制字符串,低位字节优先
H − 十六进制字符串,高位字节优先
c − 有符号字符
C − 无符号字符
s − 有符号短整型 (始终为 16 位,机器字节序)
S − 无符号短整型 (始终为 16 位,机器字节序)
n − 无符号短整型 (始终为 16 位,大端字节序)
v − 无符号短整型 (始终为 16 位,小端字节序)
i − 有符号整型 (大小和字节序取决于机器)
I − 无符号整型 (大小和字节序取决于机器)
l − 有符号长整型 (始终为 32 位,机器字节序)
L − 无符号长整型 (始终为 32 位,机器字节序)
N − 无符号长整型 (始终为 32 位,大端字节序)
V − 无符号长整型 (始终为 32 位,小端字节序)
f − 浮点型 (大小和表示取决于机器)
d − 双精度浮点型 (大小和表示取决于机器)
x − NUL 字节
X − 后退一个字节
Z − 用 NUL 填充的字符串
@ − 用 NUL 填充到绝对位置
data − 要打包的二进制数据。
返回值
unpack() 函数成功时返回一个数组,失败时返回 false。
示例
<?php $var = "Jacob"; print_r(unpack("C*myint",$var)); ?>
输出
以下是输出结果。
Array ( [myint1] => 74 [myint2] => 97 [myint3] => 99 [myint4] => 111 [myint5] => 98 )
广告