今天在用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 方法中加入了手动指定字符编码的语句才得以解决。。。