Php UTF-8十六进制代码到Unicode

Php UTF-8十六进制代码到Unicode,php,unicode,utf-8,hex,Php,Unicode,Utf 8,Hex,假设我有俄语西里尔语字符串“жжаа”,它有以下十六进制代码: d0 b6 d1 83 d1 80 d0 bd d0 b0 d0 bb 但是如何将这个十六进制代码转换回PHP中可读的西里尔字符字符串?我查了这么多资料,到目前为止还没有找到任何有效的资料。您可以使用这个: function hex2str($hex) { $str = ''; for($i = 0; $i < strlen($hex); $i += 2) { $str .= chr(hexd

假设我有俄语西里尔语字符串“жжаа”,它有以下十六进制代码:

d0 b6 d1 83 d1 80 d0 bd d0 b0 d0 bb
但是如何将这个十六进制代码转换回PHP中可读的西里尔字符字符串?我查了这么多资料,到目前为止还没有找到任何有效的资料。

您可以使用这个:

function hex2str($hex) {
    $str = '';
    for($i = 0; $i < strlen($hex); $i += 2) {
        $str .= chr(hexdec(substr($hex, $i, 2)));
    }
    return $str;
}

$string = preg_replace('/\s+/', '', 'd0 b6 d1 83 d1 80 d0 bd d0 b0 d0 bb');

echo hex2str($string);
函数hex2str($hex){ $str=''; 对于($i=0;$i这很有效,谢谢。我以前见过类似的函数,我不知道我需要删除空白。