【发布时间】:2011-07-04 16:23:08
【问题描述】:
如何让 æøå 在来自 REST API 的响应中工作?
响应是使用 json_encode() 生成的,并且由于输入数组必须是 utf8 编码的,因此响应中的特殊字符不可读..
我尝试在内容类型标题中设置字符集,但还是一样!?
Content-type: application/json; charset=utf-8
æøå 等特殊字符仍然不可读!?
回复
HTTP/1.1 200 OK
Date: Mon, 04 Jul 2011 16:16:16 GMT
Server: Apache
Content-Length: 91
Connection: close
Content-Type: application/json
{"result":[{"id":9,"name":"hehe \u00e6\u00f8\u00e5","type":0,"vatcode_id":0,"account":10}]}
【问题讨论】:
-
在将代码解析为 json 之前,是否可以通过 utf8_encode() 解析数据?我过去曾将它与非 utf8 字符一起使用,在某些情况下效果很好。这不是最好的情况,但如果它对你有用。
-
@Ryan 字符编码正确,例如
\u00e6代表æ。 -
@Artefacto 我理解,我每天都处理非 utf8 字符,即使各种非 utf8 字符被正确编码,您仍然可以解析 utf8_encode(),通过 json_encode( )。
-
使用这个库,它将格式错误的 JSON 转换为格式良好的 JSON。:php JSON