非常教程

PHP参考手册

PHP unpack() 函数

PHP unpack() 函数

PHP unpack() 函数

PHP unpack() 函数

PHP Misc 参考手册

实例

从二进制字符串对数据进行解包:

<?php
$data = "PHP";
print_r(unpack("C*",$data));
?>

运行实例 »

定义和用法

unpack() 函数从二进制字符串对数据进行解包。


语法

unpack(format,data)

参数 描述
format 必需。规定在解包数据时所使用的格式。

可能的值:

  • a - NUL 填充的字符串
  • A - SPACE 填充的字符串
  • h - 十六进制字符串,低位在前
  • H - 十六进制字符串,高位在前
  • c - signed char
  • C - unsigned char
  • s - signed short(总是16位, machine 字节顺序)
  • S - unsigned short(总是16位, machine 字节顺序)
  • n - unsigned short(总是16位, big endian 字节顺序)
  • v - unsigned short(总是16位, little endian 字节顺序)
  • i - signed integer(取决于 machine 的大小和字节顺序)
  • I - unsigned integer(取决于 machine 的大小和字节顺序)
  • l - signed long(总是32位, machine 字节顺序)
  • L - unsigned long(总是32位, machine 字节顺序)
  • N - unsigned long(总是32位, big endian 字节顺序)
  • V - unsigned long(总是32位, little endian 字节顺序)
  • f - float(取决于 machine 的大小和表示)
  • d - double(取决于 machine 的大小和表示)
  • x - NUL 字节
  • X - 备份一个字节
  • Z - NUL 填充的字符串
  • @ - NUL 填充绝对位置
data 必需。规定被解包的二进制数据。

技术细节

返回值: 如果成功则返回数组,如果失败则返回 FALSE。
PHP 版本: 4+
更新日志: 自 PHP 5.5.0 起,为 Perl 兼容进行了下列更改:

"a" 代码保留尾随 NULL 字节。
"A" 代码删除所有尾随 ASCII 空白。
新增 "Z" 代码用于 NUL 填充的字符串,并移除尾随 NULL 字节。


更多实例

实例 1

对数据进行解包:

<?php
$data = "PHP";
print_r(unpack("C*myint",$data));
?>

运行实例 »

实例 2

对数据进行解包:

<?php
$bin = pack("c2n2",0x1234,0x5678,65,66);
print_r(unpack("c2chars/n2int",$bin));
?>

运行实例 »


PHP unpack() 函数

PHP Misc 参考手册
PHP unpack() 函数

PHP目录

1.PHP Error 和 Logging 函数
2.PHP 5 Directory 函数
3.PHP 5 Date/Time 函数
4.PHP 5 Calendar 函数
5.PHP 5 Array 函数
6.PHP 5 SimpleXML 函数
7.PHP 5 MySQLi 函数
8.PHP Misc. 函数
9.PHP 5 Math 函数
10.PHP Mail 函数
11.PHP Libxml 函数
12.PHP HTTP 函数
13.PHP FTP 函数
14.PHP Filter 函数
15.PHP 5 Filesystem 函数
16.PHP 简介
17.PHP 教程
18.PHP Zip File 函数
19.PHP XML 函数
20.PHP 5 String 函数
21.PHP 语法
22.PHP 安装
23.PHP If…Else 语句
24.PHP 运算符
25.PHP 字符串变量
26.PHP 变量
27.PHP 函数
28.PHP For 循环
29.PHP While 循环
30.PHP 数组排序
31.PHP 数组
32.PHP Switch 语句
33.PHP include 和 require
34.PHP date() 函数
35.PHP 安全 E-mail
36.PHP 邮件
37.PHP Session
38.PHP Cookie
39.PHP 文件
40.PHP 异常处理
41.PHP 错误处理
42.PHP MySQL 读取数据
43.PHP MySQL 插入数据
44.PHP MySQL 创建数据库
45.PHP MySQL 简介
46.PHP – AJAX 与 PHP
47.PHP XML SimpleXML
48.PHP XML DOM
49.PHP XML Expat 解析器
50.PHP 数据库 ODBC
51.PHP MySQL Delete
52.PHP MySQL Update
53.PHP MySQL Order By 关键词
54.PHP MySQL Where 子句
55.PHP 实例 AJAX 投票
56.PHP 实例 AJAX RSS 阅读器
57.PHP 实例 AJAX 实时搜索
58.PHP 实例 AJAX 与 XML
59.PHP 实例 AJAX 与 MySQL
60.PHP array() 函数
61.PHP 5 Timezones
62.PHP array_fill() 函数
63.PHP array_diff_ukey() 函数
64.PHP array_diff_uassoc() 函数
65.PHP array_diff_key() 函数
66.PHP array_diff_assoc() 函数
67.PHP array_diff() 函数
68.PHP array_count_values() 函数
69.PHP array_combine() 函数
70.PHP array_chunk() 函数
71.PHP array_change_key_case() 函数
72.PHP array_key_exists() 函数
73.PHP array_intersect_ukey() 函数
74.PHP array_intersect_uassoc() 函数
75.PHP array_intersect_key() 函数
76.PHP array_intersect_assoc() 函数
77.PHP array_intersect() 函数
78.PHP array_flip() 函数
79.PHP array_filter() 函数
80.PHP array_fill_keys() 函数
81.PHP array_map() 函数
82.PHP array_keys() 函数
83.PHP array_reduce() 函数
84.PHP array_rand() 函数
85.PHP array_push() 函数
86.PHP array_product() 函数
87.PHP array_pop() 函数
88.PHP array_pad() 函数
89.PHP array_multisort() 函数
90.PHP array_merge_recursive() 函数
91.PHP array_merge() 函数
92.PHP array_uintersect() 函数
93.PHP array_udiff_uassoc() 函数
94.PHP array_udiff_assoc() 函数
95.PHP array_udiff() 函数
96.PHP array_sum() 函数
97.PHP array_splice() 函数
98.PHP array_slice() 函数
99.PHP array_shift() 函数
100.PHP array_search() 函数