我在我的网站上使用 UTF-8
编码。最近我一直在我的 MySQL 表中存储中文/西类牙文/俄文名称,然后用 PHP 在使用 UTF-8 字符集生成的页面上打印它们。该页面工作正常,我正确地看到了所有字母。但是,我刚刚意识到我的表是用 latin1_swedish_ci
字符集设置的。怎么可能即使我使用 latin1_swedish_ci
字符集存储这些名称,在我的网站上使用 UTF-8 提供它们仍然正确显示它们?
谢谢!
乔尔
最佳答案
因为mysql连接还在使用latin1
,
您应该将这些数据视为 UTF-8 格式,但存储在 latin1 环境中。
所以,为了证明,
show variables like '%char%';
上面应该返回大部分设置在 latin1 中
申请
set names utf8;
你会看到所有的 UTF-8 都变成了双重编码(乱码)
关于mysql - MySQL 中的 Latin1_swedish_ci 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4291284/