PHP单阵列比较



我有两个数组。例如

$arr1 = ['apple','mango','grapes','banana'];
$arr2 = ['apple','mango','orange'];

现在我想比较这两个阵列,并将其作为

进行比较
$arr3 = ['apple','mango','grapes','banana']

也就是说,将$arr2$arr1进行比较。如果$arr2的值(Apple和Mango(在$arr1中,则将其添加到$arr3中,否则从$arr2(橙色(删除该元素。

注意:$arr1值保持不变。即 - 不应去除葡萄和香蕉

我尝试了array_intersectarray_unique。但是用逻辑敲打。

@vinothini只需使用array_intersect((和array_diff(((如下

<?php
$arr1 = ['apple','mango','grapes','banana'];
$arr2 = ['apple','mango','orange'];
$arr3 = array_merge(array_intersect($arr2, $arr1), array_diff($arr1, $arr2));
print_r($arr3);

但是,关于您的答案的主要内容是,在您的情况下,$ arr3将等于$ arr1,您不必计算任何东西,所以正确的答案是:

$ arr3 = $arr1

您可以直接将$ arr1作为所需阵列((

此代码将做。

$arr3 = array_intersect($arr1, $arr2);
$arr4 = array_diff($arr1,$arr3);
$output = array_merge($arr3,$arr4);

最新更新