Php 合并具有相同键的两个关联数组
我有两个阵列:Php 合并具有相同键的两个关联数组,php,merge,associative-array,Php,Merge,Associative Array,我有两个阵列: $arr1 = array("123" => "abc"); $arr2 = array("123" => "xyz", "456" => "lmn"); 我希望结果数组为: $arr=array(“123”=>“abc,xyz”,“456”=>“lmn”) 我知道我可以编写一些代码来获取与键对应的值,然后使用像“;”这样的分隔符进行concat或者“,”,但我想知道有没有什么有效的方法可以做到这一点? 可能是内置的功能 提前谢谢 简单的foreach就可以
$arr1 = array("123" => "abc");
$arr2 = array("123" => "xyz", "456" => "lmn");
我希望结果数组为:
$arr=array(“123”=>“abc,xyz”,“456”=>“lmn”)代码>
我知道我可以编写一些代码来获取与键对应的值,然后使用像“;”这样的分隔符进行concat或者“,”,但我想知道有没有什么有效的方法可以做到这一点?
可能是内置的功能
提前谢谢 简单的foreach就可以了!检查内联注释
$arr1 = ["123" => "abc"];
$arr2 = ["123" => "xyz", "456" => "lmn"];
foreach ($arr2 as $key => $value) {
if(array_key_exists($key, $arr1)) // Check if key exists in array
$arr1[$key] .= ",$value"; // If so, append
else
$arr1[$key] = $value; // otherwise, add
}
print_r($arr1);
打印
Array
(
[123] => abc,xyz
[456] => lmn
)
检查此项简单foreach即可!检查内联注释
$arr1 = ["123" => "abc"];
$arr2 = ["123" => "xyz", "456" => "lmn"];
foreach ($arr2 as $key => $value) {
if(array_key_exists($key, $arr1)) // Check if key exists in array
$arr1[$key] .= ",$value"; // If so, append
else
$arr1[$key] = $value; // otherwise, add
}
print_r($arr1);
打印
Array
(
[123] => abc,xyz
[456] => lmn
)
检查此项尝试以下操作:
$arr1 = array("123" => "abc");
$arr2 = array("123" => "xyz", "456" => "lmn");
$o = [];
foreach($arr1 as $k => $v)
{
$o[$k][] = $v;
}
foreach($arr2 as $k => $v)
{
$o[$k][] = $v;
}
$result = array_map(function($v){implode(',', array_unique($v));}, $o);
试试这个:
$arr1 = array("123" => "abc");
$arr2 = array("123" => "xyz", "456" => "lmn");
$o = [];
foreach($arr1 as $k => $v)
{
$o[$k][] = $v;
}
foreach($arr2 as $k => $v)
{
$o[$k][] = $v;
}
$result = array_map(function($v){implode(',', array_unique($v));}, $o);
我可以知道这是不是一个有效的数组吗?是的,它是一个有效的数组array\u merge\u recursive($arr1,$arr2);//尝试此项检查@VishnuBhadoriya:array\u merge\u recursive不能与整数索引一起使用我是否知道这是一个有效的数组?是的,它是一个有效的arrayarray\u merge\u recursive($arr1,$arr2);//尝试此项检查@VishnuBhadoriya:array\u merge\u recursive不能与整数索引hanks一起使用!但是我正在寻找更像array_merge()的东西,这样我就不必编写额外的代码了。谢谢!但是我正在寻找更像array_merge()的东西,这样我就不必编写额外的代码了。