PHP16进制负数转10进制,如何实现
关注4 关注
收藏1 收藏,1.6k 浏
览
例如
$a=-101;
通过PHP内置函数可将$a转为16进制
中关村笔记本电脑echo dechex(-101 & 0xff);
-----------
输出结果:9b六项机制
求⼤神讲解,php如何将9b,这样的负16进制数,转回10进制的-101白血病是怎么引起的
2个回答
幼儿体能
-101 ⽤ decbin 显⽰有32位。 & 0xff 只取了最低8位,⾼位都被截去了, 不能还原吧。
2
就 -101 ⽽⾔,可以这么做
已采纳
$signed = unpack("l", pack("l", hexdec("ffffff9b")));
一年级的作文var_dump(ret($signed));
//解析温度值例-800
$temp = str_split(dechex(-800 &0xffff),2);
echo $temp[0];
echo $temp[1];
/
孙悟空的画法/下⾯代码中,温度为负数时,hexdec('ffff'.$Temperature),其他hexdec($Temperature)英文名人名言
$Temperature=hexdec($buffer[13]);
$zero=substr(decbin($Temperature),0,1);
困难多的成语if ($zero==1){
$Temperature=$buffer[13].$buffer[14];
$Temperature=unpack("l",pack("l",hexdec('ffff'.$Temperature)));
$Temperature=ret($Temperature);
} el {
$Temperature=$buffer[13].$buffer[14];
$Temperature=unpack("l",pack("l",hexdec($Temperature)));
$Temperature=ret($Temperature);
}
echo $temperature;