我已经按照PHP this answer中提供的步骤进行操作。
但是,我想通过以下方式在array_answer
中添加项目:
[
{
"id": "4c42ff61-148c-11e9-b673-005056be36b2",
"answer": "1",
"id_question": "11",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "59a09a34-148c-11e9-b673-005056be36b2",
"answer": "3",
"id_question": "12",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "66774e30-148c-11e9-b673-005056be36b2",
"answer": "3",
"id_question": "14",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "9469c0e4-148c-11e9-b673-005056be36b2",
"answer": "1",
"id_question": "10",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
}
]
而array_question
是:
[
{
"id": "10",
"question": "Shop sign/billboard"
},
{
"id": "11",
"question": "Pylon"
},
{
"id": "12",
"question": "Banner"
},
{
"id": "13",
"question": "Sport"
},
{
"id": "14",
"question": "Matic"
},
{
"id": "16",
"question": "Cub"
}
]
结果(array_result
)为:
[
{
"id": "10",
"question": "Shop sign/billboard",
"answer":"1",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "11",
"question": "Pylon",
"answer" : "1",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "12",
"question": "Banner",
"answer": "3",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "13",
"question": "Sport",
"answer" : null,
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "14",
"question": "Matic",
"answer": "3",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "16",
"question": "Cub",
"answer" : null,
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
}
]
在我链接的示例中,仅将array_answer
中的一项输入到array_result
中,即answer
,现在我想添加pi
,ca
,pic
,deadline
,new_deadline
,reason
和notes
。我应该怎么做?我不明白,请帮助我。
谢谢..
答案 0 :(得分:0)
您可以使用foreach
和arrays
组合它们,请参见下面的代码:
<?php
$string='[
{
"id": "4c42ff61-148c-11e9-b673-005056be36b2",
"answer": "1",
"id_question": "11",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "59a09a34-148c-11e9-b673-005056be36b2",
"answer": "3",
"id_question": "12",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "66774e30-148c-11e9-b673-005056be36b2",
"answer": "3",
"id_question": "14",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
},
{
"id": "9469c0e4-148c-11e9-b673-005056be36b2",
"answer": "1",
"id_question": "10",
"pi": null,
"ca": null,
"pic": null,
"new_deadline": null,
"reason": null,
"notes": null,
"deadline": null
}
]';
$string2='[
{
"id": "10",
"question": "Shop sign/billboard"
},
{
"id": "11",
"question": "Pylon"
},
{
"id": "12",
"question": "Banner"
},
{
"id": "13",
"question": "Sport"
},
{
"id": "14",
"question": "Matic"
},
{
"id": "16",
"question": "Cub"
}
]';
$json = json_decode($string, true);
$json2 = json_decode($string2, true);
$array0=array();
foreach($json as $key)
{
$array0[$key['id_question']]=$key;
}
$array1=array();
foreach($json2 as $key)
{
$array1[$key['id']]=$key['question'];
if(!isset($array0[$key['id']]))
{
$row=array();
$row["id"]=$key['question'];
$row["id_question"]=$key['id'];
$row["answer"]=null;
$row["pi"]=null;
$row["ca"]=null;
$row["pic"]=null;
$row["new_deadline"]=null;
$row["reason"]=null;
$row["notes"]=null;
$row["deadline"]=null;
$array0[]=$row;
}
}
$array2=array();
foreach($array0 as $key)
{
if(isset($array1[trim($key['id_question'])])){
$key['question']=$array1[$key['id_question']];
}
$key['id']=$key['id_question'];
unset($key['id_question']);
$array2[]=$key;
}
// echo
print_r($array2);
// convert to json
$json=json_encode($array2);
die;
查看实时示例:click here