php将二进制转为16进制字符串的方法:1、利用base_convert()函数,语法“base_convert(二进制数,2,16)”;2、利用bindec()和dechex()函数,语法“dechex(bindec(二进制数))”。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php将二进制转为16进制字符串的方法:

方法1:使用base_convert()函数

base_convert() 函数在任意进制之间转换数字。

base_convert($binary_string,$frombase,$tobase);
  • $binary_string 必需。规定要转换的二进制数。

  • $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。

示例:

<?php
header("content-type:text/html;charset=utf-8");
$num1="0011";
$num2="11000110011";
echo "二进制 ".$num1." 转换成十六进制 ".base_convert($num1,2,16)."<br>"; 
echo "二进制 ".$num2." 转换成十六进制 ".base_convert($num2,2,16)."<br>"; 
?>

1.png

2、使用bindec()+dechex()函数

bindec($binary_string) 函数把二进制数$binary_string转换为十进制数。

dechex($number) 函数把十进制数$number转换为十六进制字符串。

<?php
header("content-type:text/html;charset=utf-8");
$num1="0011";
$num2="11000110011";
echo "二进制 ".$num1." 转换成十六进制 ".dechex(bindec($num1))."<br>"; 
echo "二进制 ".$num2." 转换成十六进制 ".dechex(bindec($num2))."<br>"; 
?>

2.png


php怎么将二进制转为16进制字符串