PHP MYSQL 排序规则特殊字符 XML->PHP->MYSQL

标签 php mysql xml collation

我正在尝试使用 PHP 将数据从 XML 文件导入到 MYSQL 数据库中。我能够让代码正常工作,但是当我查看数据库中的数据时,有特殊字符。例如,当我在浏览器中查看 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。这就是为什么它看起来乱码。

关于PHP MYSQL 排序规则特殊字符 XML->PHP->MYSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22921631/

相关文章:

xml - 删除 XML 节点以将 XML 日志文件的大小减小到给定大小

php - Laravel 路由变量,foreach

MySQL 内连接查询需要很长时间

php - mysql_insert_id();行插入成功后不返回值

java - Java XStream 库的现代替代品?

python - 我如何在 odoo 的 xml 中获取当前日期?

php - 如何设置日期而不考虑时区?

当服务器发回错误响应时,PHP SoapClient 返回 null

php - 如何从2个表中获取结果并且不显示重复项

mysql - 在一次查询调用中计算同一张表中多列的中位数