从在线数据库中检索一些数据时,我无法弄清楚为什么某些字符会被“误解”。
我通过PHP应用程序从服务器发送数据,如下所示:
header('Content-Type: application/json');
// tried also header('Content-Type: application/javascript');
// tried also header('Content-Type: application/json; charset=utf-8');
echo json_encode($object);
如果我测试消息,则JSON编码的字符串正确包含以下字符串\u00ec
,表示字母ì
。
但是,在客户端中,当我检查未解析的字符串时,我会看到以下字符串:\u00c3\u00ac
,分别代表:Ã
和¬
(所有这些都发生在所有人身上)特殊人物,如èéàòùü等。)。
因此,当我在响应上调用JSON.parse()时,我看到错误的字符。
知道我做错了什么?
答案 0 :(得分:1)
如果您使用的是PHP 5.4<您可以将JSON_UNESCAPED_UNICODE
作为json_encode
函数的第二个参数传递。