Php 如何将三个不同的JSON文件合并为一个JSON?
我必须将三个JSON文件合并到一个JSON文件中,但这些文件以顺序方式添加,而不按根键排列。(PHP或任何其他语言) 例如: 我的代码: index.phpPhp 如何将三个不同的JSON文件合并为一个JSON?,php,json,Php,Json,我必须将三个JSON文件合并到一个JSON文件中,但这些文件以顺序方式添加,而不按根键排列。(PHP或任何其他语言) 例如: 我的代码: index.php <?php $a = file_get_contents('1.json'); $b = file_get_contents('2.json'); $merged = array(); $merged[] = json_decode($a, true); $merged[] = json_decode($b,true); $mer
<?php
$a = file_get_contents('1.json');
$b = file_get_contents('2.json');
$merged = array();
$merged[] = json_decode($a, true);
$merged[] = json_decode($b,true);
$merged_json = json_encode($merged);
echo $merged_json;
?>
b、 json
{
"strikers":[
{"name":"Kannan", "club": "Arsenal"}
]
}
我需要这个
{
"strikers":[
{"name":"Narendran", "club": "Manchester United"},
{"name":"Kannan", "club": "Arsenal"}
]
}
但我有这个
[
{
"strikers":[
{"name":"Narendran","club":"Manchester United"}
]
},
{
"strikers":[
{"name":"Narendran","club":"Manchester United"}
]
}
]
帮助我找到PHP或任何其他语言的任何建议 您的问题是正在合并最外层的阵列。您只想合并
删除符
数组:
$aDecoded = \json_decode('{
"strikers":[
{"name":"Narendran", "club": "Manchester United"}
]
}', true);
$bDecoded = \json_decode('{
"strikers":[
{"name":"Kannan", "club": "Arsenal"}
]
}', true);
$merged = [
'strikers' => \array_merge($aDecoded['strikers'], $bDecoded['strikers']),
];
$merged_json = json_encode($merged, JSON_PRETTY_PRINT);
echo $merged_json;
您可能希望确保$adecode和$bDecode都包含“striker”键,并且其值为数组
此外,如果a和b可能包含重复项,您可能需要使用循环来比较它们并排除任何重复项。请显示示例输入和所需输出。同时向我们展示您迄今为止尝试过的代码。添加了我尝试过的内容,我还提到了我需要的内容和正在获得的内容。请同时添加json文件的内容。@slepic还好吗?非常感谢。。。!!!!!它成功了…我在过去的两天里一直在寻找这个解决方案…再次非常感谢
$aDecoded = \json_decode('{
"strikers":[
{"name":"Narendran", "club": "Manchester United"}
]
}', true);
$bDecoded = \json_decode('{
"strikers":[
{"name":"Kannan", "club": "Arsenal"}
]
}', true);
$merged = [
'strikers' => \array_merge($aDecoded['strikers'], $bDecoded['strikers']),
];
$merged_json = json_encode($merged, JSON_PRETTY_PRINT);
echo $merged_json;