php chr与unicode值

时间:2011-02-20 20:11:53

标签: php unicode

我可以在php中使用字符的unicode值(例如U+0021用于!)吗?并在打印时将其转换为原始字符(使用chr()或其他功能)?

1 个答案:

答案 0 :(得分:2)

function replace_unicode_escape_sequence($match) {
    return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');
}
function unicode_chr ($chr) {
    $x = explode("+", $chr);
    $str = "\u".end($x);
    return preg_replace_callback('/\\\\u([0-9a-f]{4})/i', 'replace_unicode_escape_sequence', $str);
}

var_dump(unicode_chr("U+0021")); // string(1) "!"

改编自:How to decode Unicode escape sequences like "\u00ed" to proper UTF-8 encoded characters?