【发布时间】:2019-10-14 14:32:40
【问题描述】:
我有一个 json 数据。现在我想改造它。在我的 json 数据中有一个类似 person_on_zone 的属性,我想创建一个名为 person_info 的属性并将它们存储在该区域下的哪个人。
这是我的数据任何代码。提前致谢
我的json数据
$val = [
{
'city':'xx',
'zone':'yy',
'person_on_zone':'p1'
},
{
'city':'xx',
'zone':'yy',
'person_on_zone':'p2'
},
{
'city':'xx',
'zone':'yy',
'person_on_zone':'p3'
},
{
'city':'xx',
'zone':'ww',
'person_on_zone':'p1'
},
]
我的期望是
[
{
'city':'xx',
'zone':'yy',
'person_info':{
'person_on_zone':'p1',
'person_on_zone':'p2',
'person_on_zone':'p3',
}
},
{
'city':'xx',
'zone':'ww',
'person_info':{
'person_on_zone':'p1'
}
},
]
我试过了
foreach ($val as $v) {
$new_array['city'] = $v['city'];
$new_array['zone'] = $v['zone'];
foreach ($val as $v2) {
$new_array['person_info'] = $v['person_on_zone'];
}
}
json_encode($new_array);
【问题讨论】:
-
我认为你必须像这样改变内部循环 foreach ($val as $v2){ $new_array['person_info'] = $v2['person_on_zone']; }
-
感谢您的反馈,能否更正此代码?
-
是 $val json 字符串
-
一个键不能多次使用。
标签: php arrays json multidimensional-array