不同长度数组同顺序对比取得与原所有数组都不重复的数字
时间: 2024-02-18 07:01:40 浏览: 24
可以使用 PHP 中的 `array_diff()` 函数来实现该功能,该函数可以计算出两个或多个数组的差集,即返回在第一个数组中但不在其他数组中的元素。
具体实现思路如下:
1. 声明一个空数组 $result 用于存放结果。
2. 遍历所有数组,将其中的每个元素都作为 key 存入 $result 中。
3. 遍历所有数组,如果某个元素已经在 $result 中存在,则将其从 $result 中删除。
4. 最终 $result 中存放的就是所有数组中都不存在的元素。
具体代码实现如下:
```php
function getUniqueElements(...$arrays) {
$result = array();
foreach ($arrays as $array) {
foreach ($array as $element) {
$result[$element] = 0;
}
}
foreach ($arrays as $array) {
foreach ($array as $element) {
if (isset($result[$element])) {
unset($result[$element]);
}
}
}
return array_keys($result);
}
```
然后,我们可以使用该函数来实现你所需的功能,如下所示:
```php
$array1 = array(1, 2, 3, 4, 5);
$array2 = array(2, 3, 7);
$array3 = array(3, 4, 8, 9);
$result = getUniqueElements($array1, $array2, $array3);
print_r($result);
```
以上代码的输出结果为:
```
Array
(
[0] => 1
[1] => 5
[2] => 7
[3] => 8
[4] => 9
)
```
说明在 $array1、$array2 和 $array3 中都不存在的数字为 1、5、7、8 和 9。