在包含西里尔字符的JSON源上使用json_decode

时间:2010-12-24 18:34:27

标签: php json

我正在尝试解码包含一些西里尔字符的JSON Feed。但并非Feed中的所有字符都是西里尔字母。我正在使用json_decode,它可以正常工作,但是当有西里尔字符时返回垃圾。

结果如下:ГÐμєѓачки

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

当您的页面实际为UTF-8时,它将被解码为CP1252。正确设置标题。

>>> print u'Деффачки'.encode('cp1252').decode('utf-8')
Деффачки

答案 1 :(得分:0)

如果你不能用json_decode解码unicode字符,请在使用json_encode时使用addslashes()。问题来自以\开头的unicode字符,例如\ u30d7

$json_data = addslashes(json_encode($unicode_string_or_array));

答案 2 :(得分:0)

hermanschutte通过javascript发送数据时使用转义功能