将JSON对象添加到从PHP中的数据库获取的JSON数据中

时间:2018-07-07 10:48:58

标签: php json

在数据库中,JSON数据以以下方式存储:

{"name":"abc","score":5}

现在每次我想添加具有不同名称和分数的json对象作为相同的json数据时:

{"name":"abc","score":5},{"name":"efg","score":8},{"name":"xyz","score":6}
  

现在我已经尝试了这段代码

$database_data = $row['JSONstring']; //fetched json string from database
$json_decode_data = json_decode($database);

array_push($json_decode_data, $new_json_string); //data to append to database data
$updated_json_data = json_encode($json_decode_data); // at last encode the update json data

但这不起作用,并发出警告:参数1是一个对象。

如何解决?

1 个答案:

答案 0 :(得分:0)

现在,这里给出了所有答案和评论,我得到了所需的答案。因此,感谢您的帮助。

在我的问题开头,第一个JSON字符串格式无效:

if

取而代之的是:

{"name":"abc","score":5}

所需的JSON数据格式为:

[{"name":"abc","score":5}]

这是通过array_merge()函数实现的,如下所示:

  

将json对象附加到json对象字符串的代码

[{"name":"abc","score":5},{"name":"efg","score":8},{"name":"xyz","score":6}]