我有两个这样的不同数组
$array1 = [1, 2, 8, 10];
$array2 = [2, 4, 6, 8, 10, 15, 1];
我想获得它们之间的共同点和共同点。我几乎想出了如何将常见代码作为下面的代码,但我不能得到不常见的元素。
for($x = 0; $x < count($array1); $x++) {
for($z = 0; $z < count($array2); $z++) {
if ( $array1[$x] == $array2[$z] ) {
$array3 = $array1[$x];
print_r($array3);
} elseif ($array1[$x] !== $array2[$z]) {
// code...
}
}
}
如何在不使用内置PHP方法的情况下获得两个数组之间不常见或不同的元素,然后将其输出到新数组中。
使用此代码:
$common = [];
$uncommon = [];
foreach ($array1 as $value) {
if (in_array($value, $array2)) {
$common[] = $value;
unset($array2[$value]);
} else {
$uncommon[] = $value;
}
}
$uncommon = array_merge($uncommon, $array2);
您可以使用in_array()
功能获得不常见的元素
<?php
$array1 = [1, 2, 8, 10];
$array2 = [2, 4, 6, 8, 10, 15, 1];
$result = [];
for($i = 0;$i < sizeof($array2);$i++){
if(!in_array($array2[$i],$array1)){
$result[] = $array2[$i];
}
}
?>
输出
Array
(
[0] => 4
[1] => 6
[2] => 15
)