PHP 中的 unpack() 函数
phpprogrammingserver side programming更新于 2025/9/15 18:07:17
unpack() 函数从二进制字符串中解压数据。
语法
unpack(format, data)
参数
format − 使用的格式。以下是可能的值
a − NUL 填充的字符串
A − SPACE 填充的字符串
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 )

