PHP处理二进制数据的实现方法


Posted in PHP onJune 13, 2016

PHP处理二进制数据需要用到pack()和unpack()。

pack()用来将数据转成二进制数据,使用方法如下:

pack(“LL”, 0,1);

pack(“C”, a);

unpack()可以将二进制数据解析成关系数组,它接受2个参数,使用方法如下:

$arr = unpack(“Chead”, $binstream);   //读取第1个字节

$arr = unpack(“Chead/C3string/C4number”, $binstream);  //读取8个字节,用斜杠可以分隔

pack()和unpack()函数的第一个参数表如下

■a:NULL填充的字节串

■A:空格填充的字节串

■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:空字节

■X:倒退一个字节

■@:用NULL填充绝对位置

以上这篇PHP处理二进制数据的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
小偷PHP+Html+缓存
Dec 20 PHP
一个用php实现的获取URL信息的类
Jan 02 PHP
在服务端进行目录建立、删除,文件上传、删除的过程的php代码
Sep 10 PHP
PHP 加密与解密的斗争
Apr 17 PHP
php empty函数判断mysql表单是否为空
Apr 12 PHP
php cache类代码(php数据缓存类)
Apr 15 PHP
用PHP代码给图片加水印
Jul 01 PHP
Zend Framework教程之Zend_Layout布局助手详解
Mar 04 PHP
PHP微信公众号开发之微信红包实现方法分析
Jul 14 PHP
PHP基于curl实现模拟微信浏览器打开微信链接的方法示例
Feb 15 PHP
PHP pthreads v3下worker和pool的使用方法示例
Feb 21 PHP
PHP大文件分割分片上传实现代码
Dec 09 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
Jun 13 #PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
Jun 13 #PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
Jun 13 #PHP
PHP简单获取多个checkbox值的方法
Jun 13 #PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
Jun 13 #PHP
深入理解PHP 数组之count 函数
Jun 13 #PHP
PHP 数组遍历foreach语法结构及实例
Jun 13 #PHP
You might like
PHP查看当前变量类型的方法
2015/07/31 PHP
PHP目录与文件操作技巧总结(创建,删除,遍历,读写,修改等)
2016/09/11 PHP
PHPstorm快捷键(分享)
2017/07/17 PHP
PHP-FPM 的管理和配置详解
2019/02/17 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
基础的prototype.js常用函数及其用法
2007/03/10 Javascript
javascript[js]获取url参数的代码
2007/10/17 Javascript
jquery实现图片裁剪思路及实现
2013/08/16 Javascript
jquery实现select选择框内容左右移动代码分享
2015/11/21 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
2016/07/18 Javascript
微信公众号 客服接口的开发实例详解
2016/09/28 Javascript
浅谈js-FCC算法Friendly Date Ranges(详解)
2017/04/10 Javascript
Vue.js学习笔记之常用模板语法详解
2017/07/25 Javascript
js数组实现权重概率分配
2017/09/12 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
js最简单的双向绑定实例讲解
2018/01/02 Javascript
vue实现条件叠加搜索的解决方法
2019/05/28 Javascript
浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑
2020/09/12 Javascript
[42:06]2019国际邀请赛全明星赛 8.23
2019/09/05 DOTA
python的三目运算符和not in运算符使用示例
2014/03/03 Python
浅谈Python里面小数点精度的控制
2018/07/16 Python
Python 比较文本相似性的方法(difflib,Levenshtein)
2018/10/15 Python
django重新生成数据库中的某张表方法
2019/08/28 Python
python多线程分块读取文件
2019/08/29 Python
Python 根据数据模板创建shapefile的实现
2019/11/26 Python
基于Python爬取爱奇艺资源过程解析
2020/03/02 Python
Python使用Selenium实现淘宝抢单的流程分析
2020/06/23 Python
Urban Outfitters美国官网:美国生活方式品牌
2016/08/26 全球购物
Stubhub英国:购买体育、演唱会和剧院门票
2018/06/10 全球购物
亲属关系公证书样本
2015/01/23 职场文书
就业意向书范本
2015/05/11 职场文书
详解java如何集成swagger组件
2021/06/21 Java/Android
MySQL中CURRENT_TIMESTAMP的使用方式
2021/11/27 MySQL
Mybatis-Plus 使用 @TableField 自动填充日期
2022/04/26 Java/Android
SQL Server携程核心系统无感迁移到MySQL实战
2022/06/01 SQL Server