如何使用PHP在数组列表中添加重复相同的值
我需要使用PHP使用不同的键在相应的json数组列表中重复相同的值。我在下面解释我的代码如何使用PHP在数组列表中添加重复相同的值,php,json,Php,Json,我需要使用PHP使用不同的键在相应的json数组列表中重复相同的值。我在下面解释我的代码 $output=array(array("0"=>1,"name"=>"raj","regno"=>12),array("0"=>2,"name"=>"raja","regno"=>15)); //echo json_encode($output); 上面的数组提供以下输出 [{"0":1,"name":"raj","regno":12},{"0":2,"name":"
$output=array(array("0"=>1,"name"=>"raj","regno"=>12),array("0"=>2,"name"=>"raja","regno"=>15));
//echo json_encode($output);
上面的数组提供以下输出
[{"0":1,"name":"raj","regno":12},{"0":2,"name":"raja","regno":15}]
这里我需要用不同的键重复相同的值,预期的输出格式如下所示
预期输出:
[
{"0":1,"1":"raj","name":"raj","2":12,"regno":12},
{"0":2,"1":"raja","name":"raja","2":15,"regno":15}
]
请帮我解决这个问题。json\u编码有一个供人阅读的选项:json\u PRETTY\u PRINT 见文件: 您将获得所需的输出,您可以使用和来合并基于索引的数组和基于键的数组。这可以在内部完成: 输出(重新格式化):
问题不清楚:合并的规则是什么?(例如:为什么在预期的输出中
“2”:12
)在检索数据时不能这样做?第三项应该是18作为最后一个值吗?看起来更像第一项是ID,第二项是名称值,第三项是名称键和名称值,第四项是regno值,第五项是regno键和regno值。。
$output = array(
array("0"=>1,"name"=>"raj","regno"=>12),
array("0"=>2,"name"=>"raja","regno"=>15)
);
$output = array_map(function($data) {
return $data + array_values($data);
}, $output);
echo json_encode($output);
[
{"0": 1, "name": "raj", "regno": 12, "1": "raj", "2": 12},
{"0": 2, "name": "raja", "regno": 15, "1": "raja", "2": 15}
]