多个数组同顺序对比取得与所有原组合中不重复的数字
时间: 2024-02-18 09:00:53 浏览: 62
不重复的数字个数
这个问题与您之前提出的问题有些类似,这里给出的答案只涉及取得所有原组合中不重复的数字部分。
假设有 $arr1、$arr2、$arr3 三个数组,要取得它们中所有不重复的数字,可以按照以下步骤进行:
1. 将三个数组合并成一个新数组,可以使用 array_merge() 函数:
```php
$merged_arr = array_merge($arr1, $arr2, $arr3);
```
2. 使用 array_count_values() 函数统计每个元素在数组中出现的次数,并将结果保存在一个新数组中:
```php
$count_arr = array_count_values($merged_arr);
```
3. 遍历新数组,将出现次数为 1 的元素加入到结果数组中:
```php
$result_arr = array();
foreach ($count_arr as $key => $value) {
if ($value == 1) {
$result_arr[] = $key;
}
}
```
完整代码如下:
```php
$arr1 = array(1, 2, 3, 4);
$arr2 = array(2, 3, 5, 6);
$arr3 = array(3, 4, 6, 7);
$merged_arr = array_merge($arr1, $arr2, $arr3);
$count_arr = array_count_values($merged_arr);
$result_arr = array();
foreach ($count_arr as $key => $value) {
if ($value == 1) {
$result_arr[] = $key;
}
}
print_r($result_arr);
```
输出结果为:
```
Array
(
[0] => 1
[1] => 5
[2] => 7
)
```
其中,1、5、7 为所有原数组中不重复的数字。
阅读全文