【发布时间】:2011-03-01 13:51:48
【问题描述】:
该站点在一台服务器上运行,而数据库在另一台服务器上运行。当我在站点上输入文本以非英文字母提交给 DB 时,它会保存并呈现正确的。例如,如果我输入“Привет Всем”,我会在显示时在网站上看到相同的文字。
所有 MySQL 排序规则作为表作为字段都是 utf8_general_ci 页面上的元内容编码也是 utf-8 和 phpMyAdmin 一样在现场
虽然如果我使用 phpMyAdmin 访问数据库,我会看到 КонÑтнатин ПаР如果我将其更改为 Привет Всем 然后在我看到的网站上 ?????????? ????
我们在 2 台装有 Windows 的不同服务器上进行本地测试时,它并没有像这样工作。但是部署到 centOS 在线服务器后,它就变成了这样。
看起来它将文本双重编码为 UTF-8。我找不到它在哪里。
Zend_Soap_Client:: 或 SoapServer:: 或 MySQL 编码。
我拒绝了 Mysql 的想法,因为我认为如果它是 MySQl,那么它保存错误,然后当它提取时它应该发送错误的数据。
【问题讨论】: