我正在尝试使用PHP将数据从XML文件导入MYSQL DB。我能够使代码正常工作,但是当我查看数据库中的数据时,会有特殊字符。例如,当我在浏览器中查看XML时,它会显示为“室外环境良好...”,但在数据库中,它会显示为“室外环境良好”。

我在数据库中遍历了该字段的所有不同类型的排序规则,但似乎没有太大帮助。有时,它以上述字符和其他字符显示为???。

我也曾尝试用PHP中的以下代码同步数据

$mysqli->query("SET NAMES 'utf8' COLLATE 'utf8_general_ci'");


但是,我再没有运气了。

感谢您阅读本文并为您提供帮助!

阿克沙伊

最佳答案

您需要将字符集以及排序规则更改为UTF-8:

ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;


您将看到一个Unicode省略号(…)被转换为另一个字符集,该字符集可能是Latin1。这就是为什么它看起来乱码。

10-06 08:07
查看更多