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
)

相关文章