我刚刚遇到一些相当奇怪的事情,我使用Zend Framework 1.10和Zend_Db_Table模块从数据库中读取一些数据。数据库本身,表格和有问题的字段都将它们的排序规则设置为“utf8_general_ci”,并且在使用phpMyAdmin进行检查时,所有特殊字符在DB中都显示为格式正确。另外,使用Zend_Db_Table进行保存也可以,但是当我读取数据并将其回送到浏览器时,它将作为ISO-8859-1返回,而不是UTF8。当我试图在从数据库返回的值上使用json_encode(它仅适用于UTF8字符串作为输入)时,我注意到了同样的事情。Zend DB和编码
如何设置Zend_Db_Table/Zend_Db_Row应该始终与UTF8一起使用并返回一个UTF8值?我还没有在我的应用程序中设置任何关于编码的内容。
非常感谢您的帮助!
这并没有为我,但是如下@robertbasic评论“resources.db.params.charset = utf8”在应用程序ini中解决了这个问题。 – ktamlyn 2014-02-21 19:11:56
使这个接受的答案,因为upvotes明显支持这种解决方案(连同@ robertbasic的评论) – Robin 2014-05-07 08:53:22