我有两个数组。 例如
$arr1 = ['apple','mango','grapes','banana'];
$arr2 = ['apple','mango','orange'];
现在我想比较这两个数组并将其作为
$arr3 = ['apple','mango','grapes','banana']
即,将$arr2
与$arr1
进行比较。如果$arr2
中存在$arr1
的值(苹果和芒果),则将其添加到$arr3
中,否则从$arr2
中删除该元素(橙色)。
注意:$arr1
值保持不变。即 - 不应该去除葡萄和香蕉
我尝试了array_intersect
和array_unique
。但是这个逻辑很突出。
答案 0 :(得分:0)
@vinothini只需使用array_intersect()和array_diff(),如下所示:
Table2
但关于你答案的主要问题是,在你的情况下,$ arr3总是等于$ arr1,你不必计算任何东西,所以正确答案是:
$ <?php
$arr1 = ['apple','mango','grapes','banana'];
$arr2 = ['apple','mango','orange'];
$arr3 = array_merge(array_intersect($arr2, $arr1), array_diff($arr1, $arr2));
print_r($arr3);
你可以直接把$ arr1作为你想要的数组()
答案 1 :(得分:-1)
这段代码可以。
$arr3 = array_intersect($arr1, $arr2);
$arr4 = array_diff($arr1,$arr3);
$output = array_merge($arr3,$arr4);