首页  >  文章  >  后端开发  >  php怎么将值转为16进制并反向输出

php怎么将值转为16进制并反向输出

青灯夜游
青灯夜游原创
2023-02-24 10:28:183475浏览

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进制并反向输出

本教程操作环境: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>";
?>

1.png

说明:

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.png

步骤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>";
?>

3.png

推荐学习:《PHP视频教程

以上是php怎么将值转为16进制并反向输出的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn