欢迎各位兄弟 发布技术文章
这里的技术是共享的
在PHP中,可以使用几种方法来获取数组的并集(合并两个或多个数组中的所有唯一元素)。
array_merge
和 array_unique
组合php<?php $array1 = ['a', 'b', 'c']; $array2 = ['b', 'c', 'd', 'e']; // 合并数组然后去重 $union = array_unique(array_merge($array1, $array2)); print_r($union); /* 输出: Array ( [0] => a [1] => b [2] => c [3] => d [4] => e ) */ ?>
+
运算符(适用于关联数组)php<?php $array1 = ['a' => 1, 'b' => 2, 'c' => 3]; $array2 = ['b' => 4, 'c' => 5, 'd' => 6]; // 使用 + 运算符合并数组(保留第一个数组的键值) $union = $array1 + $array2; print_r($union); /* 输出: Array ( [a] => 1 [b] => 2 [c] => 3 [d] => 6 ) */ ?>
php<?php function array_union($array1, $array2) { return array_unique(array_merge($array1, $array2)); } $array1 = ['apple', 'banana', 'orange']; $array2 = ['banana', 'kiwi', 'pear']; $union = array_union($array1, $array2); print_r($union); /* 输出: Array ( [0] => apple [1] => banana [2] => orange [3] => kiwi [4] => pear ) */ ?>
注意:
array_merge
会重新索引数字键
+
运算符会保留第一个数组中的元素,当键名冲突时
array_unique
会保留第一个出现的值的键
根据你的具体需求选择合适的方法。对于简单的值数组,第一种方法通常就足够了。