2012-03-01 63 views
0

json_encode()发生了一个奇怪的问题。我在俄罗斯的mysql数据库中有一些文本。数据库中的文本字段以utf8-general-ci编码。当执行echo json_encode($this->result);所有在俄罗斯的文本变为“空”PHP中的json_encode()返回空值为俄语

任何想法?预先感谢您

+2

确保php文件的编码也是UTF-8 – Fredrik 2012-03-01 13:54:50

+0

'$ this-> result'里有什么? – Maerlyn 2012-03-01 13:57:33

+0

Fredrik是的,它是 @Maerlyn它是需要编码的形成数组,数组填充了数据库中的数据。 感谢您的回答gues,Pekka的帖子帮了很大的忙了 – 2012-03-01 14:10:20

回答

1

json_encode()遇到包含无效(=非UTF-8)字符的字符串时,它会静默地删除整个字符串。

最有可能您的数据库连接不是UTF-8编码。有关如何解决该问题,请参阅this question

+0

谢谢,它似乎有所帮助。 – 2012-03-01 14:08:59