UTF-8 编码仍然错误输出

Posted

技术标签:

【中文标题】UTF-8 编码仍然错误输出【英文标题】:UTF-8 Encoding still wrong output 【发布时间】:2014-01-27 16:05:30 【问题描述】:

我有一个编码问题。

该表使用utf8_general_ciphp 标头header("Content-Type: text/html; charset=utf-8");,并在html 中设置了元标记<meta charset="utf-8">。 BOM 设置正确。德语字符显示在 phpmyadmin 中。

但是当我输出编码结果时:Sask���

还有其他想法我能做什么吗?

【问题讨论】:

看看我对这个问题的回答。可能对你有帮助:***.com/questions/19702687/… 哦,谢谢。 utf8_encode() 为我完成了它。回答它,我会接受:) 嗯,这不值得回答,应该留下评论。因为您的问题可能与我链接的问题重复。只要给我一个赞成票,一切都很好:-)。但是您可能应该将 mysql 连接字符集 设置为 mysql 为 UTF-8,而不是将所有值编码为 utf-8(可以节省大量时间)。 啊,是的,mysqli_query($link, "SET NAMES 'utf8'"); mysqli_query($link, "SET CHARACTER SET 'utf8'");帮助。谢谢 【参考方案1】:
$db = mysqli_connect(DB_HOST, DB_USER, DB_PASS);
mysqli_set_charset($db, 'utf8'); // ← SOLUTION
mysqli_select_db($db, DB_NAME);

【讨论】:

【参考方案2】:

这样就解决了问题

mysqli_query($link, "SET NAMES 'utf8'"); 
mysqli_query($link, "SET CHARACTER SET 'utf8'"); 

【讨论】:

以上是关于UTF-8 编码仍然错误输出的主要内容,如果未能解决你的问题,请参考以下文章

xml已经指定了UTF-8编码格式仍然导出中文乱码

无法将带有塞浦路斯数据的csv文件上传到Google数据工作室-编码utf-8错误

使用Sublime编写HTML页面时发现,虽然已经设置好了UTF-8的编码格式,但却发现HTML页面的汉字仍然是乱码。

MATLABUTF-8编码文本输出

如何解决 Python print 输出文本显示 gbk 编码错误

字符串转换成utf-8编码