我使用json_encode
在我的php页面上获得此输出{"id":"761","user":"Moderator","message":"test"}
{"id":"760","user":"Patrick","message":"test"}
现在我想用javascript中的JSON.parse解析这些值,以获得一个数组。 但它不起作用。
只有我有一个json Objekt才有效。
解决这个问题的最佳方法是什么?
要拆分'}'并解析我将得到的每个字符串?
答案 0 :(得分:5)
{}{}
无效JSON。你需要有一个数组包装它们并用逗号[{},{}]
分隔它们。您可以通过以下方式在PHP中执行此操作:
$entries = array();
foreach ($database_entry as $array) {
$entries[] = $array;
}
echo json_encode($entries);
那就是你应该只调用json_encode
一次。
答案 1 :(得分:1)
此输出不是正确的JSON对象或数组。你想要做的是将对象包装在方括号中,并用逗号分隔它们。输出应如下所示:
[{"id":"761","user":"Moderator","message":"test"},
{"id":"760","user":"Patrick","message":"test"}]
您需要更改PHP以便以这种方式生成输出。
答案 2 :(得分:0)
答案 3 :(得分:0)
您需要将对象输出到JSON数组中,每个对象/数组项用逗号分隔:
{
"users": [
{"id":"761","user":"Moderator","message":"test"},
{"id":"760","user":"Patrick","message":"test"}
]
}