PHP如何将从二进制文件中读取的字节转换为数字

$a=fread($file,4);变量$a从二进制文件$file中读取了4个字节的数据,已经知道这四个字节代表一个整数请问这样才能将$a转换为整数,能正确输出和能进行如... $a=fread($file,4);
变量$a 从二进制文件$file中读取了4个字节的数据,已经知道这四个字节代表一个整数
请问这样才能将$a 转换为整数,能正确输出和能进行如if($a>20)这样数值比较,
展开
 我来答
嘟嘟乐悠
2013-01-01 · TA获得超过568个赞
知道小有建树答主
回答量:359
采纳率:0%
帮助的人:329万
展开全部
bindec函数可转换二进制数为十进制数
更多追问追答
追问
bindec函数不行,bindec函数只是能将 $a="10010101";这样像二进制数 的字符串或者数字转换为10进制,我的那个是可是从文件中读取出来的4个字节哦~
追答
怎么就不可以了?fread函数的返回值难道还不是字符串么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友91fbf9c
2015-08-06 · 超过61用户采纳过TA的回答
知道小有建树答主
回答量:319
采纳率:0%
帮助的人:124万
展开全部
bindec 这个函数可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9308069
推荐于2017-09-22 · TA获得超过1万个赞
知道大有可为答主
回答量:3947
采纳率:89%
帮助的人:1920万
展开全部
$a=fread(....);//读4个字节
$d=unpack(‘V’,$a); //按32bit无符号小端解码。大端用字母N

echo $d[0];

另,手工计算也可以
$a=fread(....);//读4个字节

$d=ord($a[0]);
$d|=ord($a[1])<<8;

$d|=ord($a[2])<<16;

$d|=ord($a[3])<<24;

按小端计算
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式