这篇文章主要讲解了“php如何将数据转为16进制字符串”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何将数据转为16进制字符串”吧!
镇安网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站开发等网站项目制作,到程序开发,运营维护。成都创新互联公司从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司。
3种转换方法:1、使用dechex()函数,可以把十进制数转换为十六进制字符串,语法“dechex(指定数据值);”。2、使用base_convert()函数,可以将任意进制值转换为十六进制字符串,语法“base_convert(数据值,原进制,16);”。3、使用bin2hex()函数,可以把ASCII字符的字符串转换为十六进制字符串,语法“bin2hex(数据值)”。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
在php中,将数据转为16进制字符串分两种情况:
将其他进制的数据转为16进制字符串
将ASCII 字符的字符串转为16进制字符串
不同情况,使用的函数不同。
情况1:将其他进制的数据转为16进制字符串
PHP提供两种函数来进行转换:
dechex()函数
base_convert()函数
1、dechex()函数转换
dechex() 函数把十进制数转换为十六进制数。
dechex(number);
返回值:一个字符串,包含十进制值的十六进制数。
示例:
"; echo dechex("10") . "
"; echo dechex("1587") . "
"; echo dechex("70"); ?>
说明:
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进制数。
示例:
"; echo base_convert("364", 8, 16) . "
"; ?>
说明:
base_convert()函数也可以实现16进制转其他进制,此时参数frombase的值需要固定值16。
例16转10:
"; echo base_convert("a", 16, 10) . "
"; echo base_convert("11ff", 16, 10) . "
"; echo base_convert("cceeff", 16, 10); ?>
如果只是想16进制转10进制,还有一个更方便的函数hexdec()
hexdec() 将一个十六进制字符串转换为十进制数。所能转换的最大数值为 7fffffff,即十进制的 2147483647。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。
hexdec() 将遇到的所有非十六进制字符替换成 0。这样,所有左边的零都被忽略,但右边的零会计入值中。
"; echo hexdec("a") . "
"; echo hexdec("11ff") . "
"; echo hexdec("cceeff"); ?>
情况2:将ASCII 字符的字符串转为16进制字符串
bin2hex() 函数把 ASCII 字符的字符串转换为十六进制值。
bin2hex(string)
返回值:返回要转换字符串的十六进制值。
"; echo bin2hex("123")."
"; echo bin2hex("10")."
"; ?>
感谢各位的阅读,以上就是“php如何将数据转为16进制字符串”的内容了,经过本文的学习后,相信大家对php如何将数据转为16进制字符串这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!