首页 > 后端开发 > 正文

PHP怎么把经过UTF-8编码的中文字符转换成正常的中文

2024-08-11 15:58:18 | 我爱编程网

PHP怎么把经过UTF-8编码的中文字符转换成正常的中文很多朋友对这方面很关心,我爱编程网整理了相关文章,供大家参考,一起来看一下吧!

本文目录一览:

PHP怎么把经过UTF-8编码的中文字符转换成正常的中文

PHP UNICODE 编码转换

Unicode是一个字符集,Unicode是定长的都为双字节.
这里我们常用的是utf8字符集编码,楼主是说的Unicode转换为UTF-8吧。

/**
* Unicode字符转换成utf8字符
* @param [type] $unicode_str Unicode字符
* @return [type] Utf-8字符
*/
function unicode_to_utf8($unicode_str) {
$utf8_str = '';
$code = intval(hexdec($unicode_str));
//这里注意转换出来的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;
}

PHP怎么把经过UTF-8编码的中文字符转换成正常的中文

PHP怎么把经过UTF-8编码的中文字符转换成正常的中文

首先,UTF-8编码的中文字符也是正常的。
如果你认为 gb2312 才“正常”, 可以这样:
$utf8_str = '中文'; // 注意这儿得是 UTF-8 编码的字符串
$gb2312_str = mb_convert_encoding($str, 'GB2312', 'UTF-8');

%E5%90%89%E6%9E%97
有人已经回答了,
用 urldecode 就行了。

PHP怎么把经过UTF-8编码的中文字符转换成正常的中文

php中怎么将GB18030转换为UTF-8编码

我爱编程网(https://www.52biancheng.com)小编还为大家带来php中怎么将GB18030转换为UTF-8编码的相关内容。

可以使用iconv函数对编码进行转换,iconv("gb18030", "utf-8", "要转换的字符串");

iconv详细用法如下:

iconv — 字符串按要求的字符编码来转换

string iconv ( string $in_charset, string $out_charset, string $str)

将字符串 str 从 in_charset 转换编码到 out_charset。

参数:

in_charset:输入的字符集。

out_charset:输出的字符集。

如果在 out_charset 后添加了字符串 //TRANSLIT,将启用转写(transliteration)功能。

这个意思是,当一个字符不能被目标字符集所表示时,它可以通过一个或多个形似的字符来近似表达。 我爱编程网

如果添加了字符串 //IGNORE,不能以目标字符集表达的字符将被默默丢弃。

否则,str 从第一个无效字符开始截断并导致一个 E_NOTICE。

str:要转换的字符串。

返回值:

返回转换后的字符串, 或者在失败时返回 FALSE。

以上就是我爱编程网为大家带来的PHP怎么把经过UTF-8编码的中文字符转换成正常的中文,希望能帮助到大家!更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“PHP怎么把经过UTF-8编码的中文字符转换成正常的中文”相关推荐