如何将 PHP 十六进制数组转换为 ascii?x76x52x9.


How can I convert a PHP hex array, to ascii? x76x52x9

如何将 PHP 十六进制数组转换为 ascii?例如,如果我有这个字符串:

$var1="'x76'x52'x9'x3a'x5b'x79";

当我回显它时,它看起来是正确的,但我想在程序中将其转换为 ascii,这样我就可以对它进行进一步处理并在脚本中进一步使用它。

字符串已经如你所愿。十六进制符号就是:一个符号。实际上,该字符串有 6 个字符:

echo strlen($var1);

输出:

6

而这个:

echo $var1 === "vR't:[y";

输出:

1

这意味着它们是平等的。请注意,我仍然必须用反斜杠转义制表符,但这只是表示法。实际上,制表符就在那里,并且是一个字符。

你可以试试这段代码

<?php
 $var1 = ''x76'x52'x9'x3a'x5b'x79';
echo hexa_string($var1);
function hexa_string($hex_str)
{
$string='';
for ($i=0; $i < strlen($hex_str)-1; $i+=2)
{
    $string .= chr(hexdec($hex_str[$i].$hex_str[$i+1]));
}
return $string;
}
?>