例如,如果我有一个像这样的简单JSON:
{
"data": [
"pets" : "none",
"parents": {"mom":"Anna", "dad":"Bob"},
"ancestors": { "children":[
{
"name": "Joe",
"age" : "10"
},
{
"name" : "Ron",
"age" : "4"
}
]}
]
}
让我们说我想用PHP添加一个年龄为“8”的孩子“Jessica”
我该怎么办?
到目前为止,我知道我需要使用json_decode来访问JSON,json_encode以保存其中的内容
但如果我需要添加一个$newchild = array("name" : "Jessica", "age" : "8");
并添加它,它将如何在data->祖先 - >孩子中添加?
答案 0 :(得分:2)
当您使用json_decode时,您正在将json字符串转换为php数组
因此,您可以像这样添加新元素:
$jsonstring = '...the string...';
$jsonarray = json_decode($jsonstring, true);
$jsonarray['data']['ancestors']['children'][] = array('name'=>'Jessica', 'age'=>8);
制作$jsonarray
的print_r以查看其内容
然后你当然可以再次打印到json string
$jsonstring = json_encode($jsonarray);