Heim  >  Artikel  >  Backend-Entwicklung  >  php如果将utf-8码对应的汉字显示出来

php如果将utf-8码对应的汉字显示出来

WBOY
WBOYOriginal
2016-06-06 20:15:071122Durchsuche

这是我写的Unicode码生成UTF-8对应的码值

<code>//3字节 1110xxxx 10xxxxxx 10xxxxxx 
$unicode = '\u611f'; //中文感Unicode

function unicode_utf8($unicode)
{
    $decval = intval(hexdec($unicode));
    $left = dechex( 0xe0 | ($decval >> 12));
    $mid  = dechex( 0x80 | (($decval >> 6) & 0x3f));
    $right= dechex( 0x80 |  ($decval & 0x3f));

    return $left.$mid.$right;
}

echo $utf8 = unicode_utf8($unicode);
echo "\n";</code>

?>

输出:e6849f
问题是如何把UTF-8码 e6849f 对应的汉字'感'显示出来??

回复内容:

这是我写的Unicode码生成UTF-8对应的码值

<code>//3字节 1110xxxx 10xxxxxx 10xxxxxx 
$unicode = '\u611f'; //中文感Unicode

function unicode_utf8($unicode)
{
    $decval = intval(hexdec($unicode));
    $left = dechex( 0xe0 | ($decval >> 12));
    $mid  = dechex( 0x80 | (($decval >> 6) & 0x3f));
    $right= dechex( 0x80 |  ($decval & 0x3f));

    return $left.$mid.$right;
}

echo $utf8 = unicode_utf8($unicode);
echo "\n";</code>

?>

输出:e6849f
问题是如何把UTF-8码 e6849f 对应的汉字'感'显示出来??

<code>$unicode = '\u611f'; //中文感Unicode
// Unicode转换utf8函数
function unicode_to_utf8($unicode) {
    $utf8_str = '';
    $code = intval(hexdec($unicode));
    //这里注意转换出来的code一定得是整形,这样才会正确的按位操作
    $ord_1 = decbin(0xe0 | ($code >> 12));
    $ord_2 = decbin(0x80 | (($code >> 6) & 0x3f));
    $ord_3 = decbin(0x80 | ($code & 0x3f));
    $utf8_str = chr(bindec($ord_1)) . chr(bindec($ord_2)) . chr(bindec($ord_3));
    return $utf8_str;
}
echo unicode_to_utf8($unicode);
?></code>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn