php将值转为16进制并反向输出的方法:1、使用dechex()或base_convert()函数将值转为16进制,语法“$str=dechex($number);”或“$str=base_convert($number,10,16);”;2、使用strrev()函数和echo将获取的16进制值反向输出,语法“echo strrev($str);”。
本教程操作环境:windows7系统、PHP8版、DELL G3电脑
php将值转为16进制并反向输出可以分成两个步骤:
步骤1:将值转为16进制
步骤2:16进制值反向输出
下面来一步步来实现。
步骤1:将值转为16进制
PHP提供两种函数来进行转换:
dechex()函数
base_convert()函数
1、dechex()函数转换
dechex() 函数把十进制数转换为十六进制数。
dechex(number);
返回值:一个字符串,包含十进制值的十六进制数。
示例:
<?php
$num1=1587;
echo dechex($num1) . "<br>";
$num2=30;
echo dechex($num2) . "<br>";
?>
说明:
hexdec() 将一个十六进制字符串转换为十进制数。所能转换的最大数值为 7fffffff,即十进制的 2147483647。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。
hexdec() 将遇到的所有非十六进制字符替换成 0。这样,所有左边的零都被忽略,但右边的零会计入值中。
2、base_convert()函数转换
base_convert() 函数在任意进制之间转换数字。
base_convert(number,frombase,tobase);
参数 | 描述 |
---|---|
number | 必需。规定要转换的数。 |
frombase | 必需。规定数字原来的进制。介于 2 和 36 之间(包括 2 和 36)。高于十进制的数字用字母 a-z 表示,例如 a 表示 10,b 表示 11 以及 z 表示 35。 |
tobase | 必需。规定要转换的进制。介于 2 和 36 之间(包括 2 和 36)。高于十进制的数字用字母 a-z 表示,例如 a 表示 10,b 表示 11 以及 z 表示 35。 |
当参数 tobase
的值为16时,可将其他进制数转为16进制数。
示例:
<?php
$num1=1587;
echo base_convert($num1, 10, 16) . "<br>";
$num2=30;
echo base_convert($num2, 10, 16). "<br>";
?>
步骤2:将获取的16进制值反向输出
反向输出就是将值反转,然后使用echo输出。
PHP中,可以使用strrev()函数实现字符串反转,将字符串中字符的顺序翻转过来。
语法:
strrev($string)
参数 | 描述 |
---|---|
string | 必需。规定要反转的字符串。 |
该函数只接受一个必需参数“$string”用于进行反转操作。
操作成功,会返回已反转的字符串。
示例:
<?php
header("Content-type:text/html;charset=utf-8");
$num1=1587;
echo "原数据:".$num1 . "<br>";
$str1=base_convert($num1, 10, 16);
echo "16进制值:".$str1 . "<br>";
echo "反转后:".strrev($str1). "<br>";
echo "<hr>";
$num2=30;
$str2=base_convert($num2, 10, 16);
echo "原数据:".$num2 . "<br>";
echo "16进制值:".$str2 . "<br>";
echo "反转后:".strrev($str2). "<br>";
?>
以上就是php怎么将值转为16进制并反向输出的详细内容,更多请关注编程网其它相关文章!