给定十六进制字符串,我们必须将其转换为ASCII字符字符串。
要将十六进制字符串转换为ASCII字符字符串,我们可以使用pack()格式为“ H *”的函数,该函数表示源字符串为十六进制格式。
语法:pack("H*", hex_string);
例子:Input: "48656c6c6f20776f726c64"
Output: "Hello world"
Input: "4142432031323320402324252e2058595a"
Output: "ABC 123 @#$%. XYZ"
PHP代码:<?php
$str = "Hello world";
$hex_str = bin2hex($str);
$str1 = pack("H*", $hex_str);
//打印两个字符串
echo ("str = " . $str . "\n");
echo ("hex_str = " . $hex_str . "\n");
echo ("str1 = " . $str1 . "\n");
$str = "ABC 123 @#$%. XYZ";
$hex_str = bin2hex($str);
$str1 = pack("H*", $hex_str);
//打印两个字符串
echo ("str = " . $str . "\n");
echo ("hex_str = " . $hex_str . "\n");
echo ("str1 = " . $str1 . "\n");
?>
输出结果str = Hello world
hex_str = 48656c6c6f20776f726c64
str1 = Hello world
str = ABC 123 @#$%. XYZ
hex_str = 4142432031323320402324252e2058595a
str1 = ABC 123 @#$%. XYZ