小白教程
所有教程
关于
Search
172.69.58.16
172.69.58.16
参数设置
贡献
退出
操作
编辑
移动
保护
信息
历史
删除
查看“Func misc unpack”的源代码
本页内容
上一节:
Func_misc_uniqid
下一节:
Func_misc_usleep
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{DISPLAYTITLE:unpack()}}[[Category:PHP 杂项函数参考手册|20]] = PHP unpack() 函数 = [[:Category:PHP 杂项函数参考手册]] 从二进制字符串对数据进行解包: <sample title="" desc="" lang="php" hererun="1"> <?php $data = "PHP"; print_r(unpack("C*",$data)); ?> </sample> == 定义和用法 == unpack() 函数从二进制字符串对数据进行解包。 == 语法 == <pre> unpack(format,data) </pre> {| class="table table-striped table-hover" !width="50%"| 参数 !width="50%"| 描述 |- | 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 | 必需。规定被解包的二进制数据。 |} == 技术细节 == {| class="table table-striped table-hover" | 返回值: | 如果成功则返回数组,如果失败则返回 FALSE。 |- | PHP 版本: | 4+ |- | 更新日志: | 自 PHP 5.5.0 起,为 Perl 兼容进行了下列更改:"a" 代码保留尾随 NULL 字节。 "A" 代码删除所有尾随 ASCII 空白。新增 "Z" 代码用于 NUL 填充的字符串,并移除尾随 NULL 字节。 |} == 更多实例 == == 实例 1 == 对数据进行解包: <sample title="" desc="" lang="php" hererun="1"> <?php $data = "PHP"; print_r(unpack("C*myint",$data)); ?> </sample> == 实例 2 == 对数据进行解包: <sample title="" desc="" lang="php" hererun="1"> <?php $bin = pack("c2n2",0x1234,0x5678,65,66); print_r(unpack("c2chars/n2int",$bin)); ?> </sample> [[:Category:PHP 杂项函数参考手册]]
返回至“
Func misc unpack
”。
上一节:
Func_misc_uniqid
下一节:
Func_misc_usleep