从utf-8十六进制代码转换为PHP中的字符

时间:2012-10-03 19:54:38

标签: php utf-8

我有十六进制代码c2ae,如何将其转换为UTF-8字符:®。我需要一个针对任何十六进制代码的通用和SIMPLE解决方案。

更新:这适用于任何utf-8十六进制代码,如d0a6

2 个答案:

答案 0 :(得分:6)

function hexStringToString($hex) {
    return pack('H*', $hex);
}

答案 1 :(得分:1)

我确信自从4年前你问过这个问题以来你一定找到了解决方案,但是我讨厌在寻找东西的时候在Google上找到未解答的问题。

您可以使用以下命令在PHP中创建包含十六进制字符的字符串:

$string = "\xc2\xae";
$string2 = "\xd0\xa6";
echo $string;
echo $string2;

将输出®Ц

PHP的语言参考[在此处标题为“Double Quoted”]。

您还可以使用\22语法使用八进制字符串,并且在PHP7中使用\u语法添加了unicode代码点支持。这个要求代码周围{},如:\u{1000}

快乐的编码!