json_encode包装导致额外的符号和新行

时间:2014-03-05 12:14:42

标签: php json

我有一个PHP脚本,用于提供JSON数据 输出代码基本上是这样的:

header('Content-type: application/json');
echo json_encode($data);

它在我的家庭服务器上工作正常,但在网络托管上它会添加一些符号和换行的新行,如下所示:

2c13
[{
    "id":"34",
    "category_id":"9",
    "title":"\u0423\u0431\u0438\u0442\u0430\u044f \u0440\u0435\u0437\u0438\u043d\u0430",
    "max_quantity":"0","power":"10","price":"1000"
},
{
    "id":"35",
    "category_id":"9",
    "title":"\u0420\u0435\u0437\u0438\u043d\u0430 \u0441 \u0433\u0440\u044b\u0436\u0435\u0439",
    "max_quantity":"0",
    "power":"12",
    "price":"1000"
}, {
    "id":"36",
    "category_id":"9",
    "title":"\u041a\u043e\u043b\u0451\u0441\u0430 \u0441 \u043a\u0440\u0438\u0432\u044b\u043c \u0434\u0438\u0441\u043a\u043e\u043c",
    "max_quantity":"0",
    "power":"15",
    "price":"1000"
}, {
    "id":"80",
    "category_id":"9",
    "title":"\u041f\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u043d\u044b\u0435 \u043a\u0430\u0442\u043a\u0438",
    "max_quantity":"0",
    "power":"18",
    "price":"1000"
}]
0

第二行与我的家庭服务器上的响应完全相同,并且响应应该是什么 json_last_error()返回0.
我无法弄清楚为什么会发生这种情况 什么可能导致这个问题?

1 个答案:

答案 0 :(得分:0)

检查数组$ data。它可能包含一些额外的价值。 Json_encode只是将我们的php数组转换为json数组。