现在的位置: 首页 > 综合 > 正文

Zend Framework 的一个bug, 居然不能设置数据库读取时的字符编码…

2013年10月04日 ⁄ 综合 ⁄ 共 669字 ⁄ 字号 评论关闭

今天在用Zend Framework 1.9.8 的时候,发现页面输出的总是乱码,数据库的字段编码、文件编码、HTML输出编码都统一为了utf-8,居然还会出现乱码,相当晕。。。

 

通过排查发现是从数据库中读数据的时候出现了乱码,但是我已经按照ZF的方式在配置文件application.ini 中添加了语句resources.db.charset = utf8 却还是不行,于是我试着在Model 里面加入语句die(var_export(self::$_defaultDb->getConfig())) 进行调试,发现配置数据中的charset 居然是NULL ...

后来我想跟踪源码看看是在哪一步把这个值给丢了,无奈ZF过于庞大、加上没有好的跟踪方法,只能放弃...

 

最后我是在Model 类里面的init 方法中加入了手动指定字符编码的语句才得以解决。。。

抱歉!评论已关闭.