今天小编给大家分享一下php如何将值转为16进制并反向输出的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
php将值转为16进制并反向输出的方法:1、使用dechex()或base_convert()函数将值转为16进制,语法“$str=dechex($number);”或“$str=base_convert($number,10,16);”;2、使用strrev()函数和echo将获取的16进制值反向输出,语法“echo strrev($str);”。
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进制并反向输出”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。