PHP中的二进制数据到十六进制字符串

时间:2017-06-16 10:42:33

标签: php binary hex

我需要获取一些二进制数据并将其转换为十六进制。当我做的时候

$value = bin2hex($msg);

$ value是“0003”。但是我需要它是十六进制字符串,如0x0003或甚至只是“03”(十六进制),以便使用它。

我该如何转换它?

2 个答案:

答案 0 :(得分:2)

我需要将字符串转换为十六进制字符串以使用bin2hex($msg); 你可以用这个

function strToHex($string){
$hex = '';
for ($i=0; $i<strlen($string); $i++){
    $ord = ord($string[$i]);
    $hexCode = dechex($ord);
    $hex .= substr('0'.$hexCode, -2);
}
return strToUpper($hex);}

喜欢这个

 $value = bin2hex(strToHex($msg));

答案 1 :(得分:0)

试一试

  $value = dechex(bindec($msg));
     echo $value ;