PHP unpack 杂项函数



  • 定义和用法

    unpack - 从二进制字符串解包数据
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    7.2.0 float和double类型同时支持Big Endian和Little Endian。
    7.1.0 已添加可选的偏移量。
    5.5.0 进行了更改以使此功能与Perl保持一致: 现在,“a”代码保留了尾随的NULL字节。 现在,“A”代码将剥离所有结尾的ASCII空格(空格,制表符,换行符,回车符和NULL字节)。已为填充NULL的字符串添加了“ Z”代码,并删除了结尾的NULL字节。
  • 语法

    unpack( string $format , string $data [, int $offset = 0 ] )
    
    unpack() 根据给定的格式将二进制字符串解压缩为数组。 解压缩后的数据存储在关联数组中。 为此,您必须命名不同的格式代码,并用斜杠/分隔。 如果存在中继器参数,则每个数组键在给定名称后都有一个序列号。
  • 参数

    参数 必需的 描述
    format 有关格式代码的说明,请参见pack()
    data 打包数据。
    offset 开始从中解包的偏移量。
  • 返回值

    返回包含二进制字符串的未压缩元素的关联数组。
  • 示例

    $binarydata = "\x04\x00\xa0\x00";
    $array = unpack("cchars/nint", $binarydata);
    print_r($array);
    
  • 相关页面

    pack() - 将数据打包成二进制字符串