十六进制转十进制:
16进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方……
所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。
例:2AF5换算成10进制:
用竖式计算:
第0位: 5 * 16^0 = 5
第1位: F * 16^1 = 240
第2位: A * 16^2= 2560
第3位: 2 * 16^3 = 8192
直接计算就是:
5 * 16^0 + F * 16^1 + A * 16^2 + 2 * 16^3 = 10997
那么怎么用PHP将16进制转换成10进制?
在PHP中想要将16进制转换成10进制,可以使用hexdec()函数来实现。
hexdec() 函数把十六进制数转换为十进制数。
语法
hexdec(hex_string);
参数:
hex_string:必需。规定要转换的十六进制字符串。
返回值:
返回与hex_string参数所表示的十六进制数等值的的十进制数。
说明:
hexdec() 将一个十六进制字符串转换为十进制数。所能转换的最大数值为 7fffffff,即十进制的 2147483647。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。
hexdec() 将遇到的所有非十六进制字符替换成 0。这样,所有左边的零都被忽略,但右边的零会计入值中。
示例:
<?php echo hexdec("5e") . "<br>"; echo hexdec("a") . "<br>"; echo hexdec("f1f1") . "<br>"; echo hexdec("abc451") . "<br>"; ?>
输出:
94 10 61937 11256913
更多相关知识,请访问 PHP中文网!!