修复损坏的 UTF-8 编码:实用的解决方案
背景:
用户经常遇到 UTF-8 编码损坏的问题,其特征是像 Ò® 这样的字符而不是重音符号 人物。此问题是由数据库排序规则、PHP 设置和存储方法不一致引起的。
映射损坏的字符以更正 UTF-8:
要解决此问题,一种有效的方法方法涉及 MySQL 数据库转储和重新导入过程。此方法允许将损坏的字符转换为其正确的 UTF-8 表示形式。
逐步修复:
1. Dump the MySQL database using the following command: mysqldump -h DB_HOST -u DB_USER -p DB_PASSWORD --opt --quote-names \ --skip-set-charset --default-character-set=latin1 DB_NAME > DB_NAME-dump.sql 2. Import the dumped data back into a new database with the correct UTF-8 settings: mysql -h DB_HOST -u DB_USER -p DB_PASSWORD \ --default-character-set=utf8 DB_NAME < DB_NAME-dump.sql
来源:
该解决方案基于所描述的技术于:
http://blog.hno3.org/2010/04/22/fixing-double-encoded-utf-8-data-in-mysql/
附加说明:
以上是如何修复 MySQL 数据库中损坏的 UTF-8 编码?的详细内容。更多信息请关注PHP中文网其他相关文章!