两个assoc数组的PHP差异
我有两个关联数组: 第一个:两个assoc数组的PHP差异,php,arrays,Php,Arrays,我有两个关联数组: 第一个: Array ( [0] => Array ( [24] => s [23] => czarny ) [1] => Array ( [24] => m [23] => czarny ) [2] => Array (
Array
(
[0] => Array
(
[24] => s
[23] => czarny
)
[1] => Array
(
[24] => m
[23] => czarny
)
[2] => Array
(
[24] => l
[23] => czarny
)
)
第二:
Array
(
[0] => Array
(
[24] => l
[23] => czarny
)
[1] => Array
(
[23] => czarny
[24] => m
)
)
在输出中,我希望得到:
Array
(
[24] => s
[23] => czarny
)
因为有两个阵列:
[0] => Array
(
[23] => czarny
[24] => m
)
及
我也一样。
有人知道怎么处理吗?我试图这样做,但我感到困惑。这是一个有点疯狂的循环,但它会起作用
$array1[0][23] = 'czarny';
$array1[0][24] = 'm';
$array1[1][23] = 'czarny';
$array1[1][24] = 's';
$array1[2][23] = 'czarny';
$array1[2][24] = 'l';
$array2[0][23] = 'czarny';
$array2[0][24] = 'm';
$array2[1][23] = 'czarny';
$array2[1][24] = 'l';
end($array1);
// Merge two arrays
$array3 = array_merge($array1,$array2);
// Loop through the one array and create a second assoc array based on key 24
foreach($array1 as $mainKey => $object) {
foreach($object as $key => $value) {
$newArray[$object[24]][$key] = $value;
}
}
// Loop through new array to create yet another new one but reset keys back to numeric
$i=0;
foreach($newArray as $key => $value) {
$final[$i] = $value;
$i++;
}
print_r($final);
这些不是关联数组。可能与的重复。这个问题是完全相同的,并且已经有了几个答案。@Dan这些答案在我的情况下都不起作用。
$array1[0][23] = 'czarny';
$array1[0][24] = 'm';
$array1[1][23] = 'czarny';
$array1[1][24] = 's';
$array1[2][23] = 'czarny';
$array1[2][24] = 'l';
$array2[0][23] = 'czarny';
$array2[0][24] = 'm';
$array2[1][23] = 'czarny';
$array2[1][24] = 'l';
end($array1);
// Merge two arrays
$array3 = array_merge($array1,$array2);
// Loop through the one array and create a second assoc array based on key 24
foreach($array1 as $mainKey => $object) {
foreach($object as $key => $value) {
$newArray[$object[24]][$key] = $value;
}
}
// Loop through new array to create yet another new one but reset keys back to numeric
$i=0;
foreach($newArray as $key => $value) {
$final[$i] = $value;
$i++;
}
print_r($final);