json_encode php没有返回有效的json?

时间:2014-04-22 16:04:05

标签: php json

我写了这个

if($stmt->execute()){
    $user = $stmt->get_result();
    while ($obj = $user->fetch_object()) {
         echo json_encode($obj) . ",";
    }
}

然后它返回

{"tabId":1,"tabName":"Main","uId":"1"},{"tabId":2,"tabName":"Photography","uId":"1"},

如何删除,使其成为有效的json?

1 个答案:

答案 0 :(得分:3)

每次循环时,都会生成一个有效的JSON文本(后跟一个逗号)。

当你将它们连接在一起时(这是每次你到处时回声的效果),结果无效。

将值放在数组中。最后只调用json_encode

我的PHP非常生疏,但我认为这样做会有效。

$data = Array();
if($stmt->execute()){
    $user = $stmt->get_result();
    while ($obj = $user->fetch_object()) {
         $data[] = $obj;
    }
}
echo json_encode($data);