我正在尝试使用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。这就是为什么它看起来乱码。