You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP合并两个数组后如何移除全部重复元素得到仅出现一次的数组

PHP合并数组后仅保留单次出现元素的实现方法

你之前使用的去重方法(大概率是array_unique())只会保留重复元素的单个副本,不会完全剔除所有出现过多次的元素,要实现你的需求可以按以下步骤操作:

完整实现代码

// 定义原始数组
$array1 = array("2", "3");
$array2 = array("3", "5", "4", "7", "8", "2", "10");

// 合并两个数组
$mergedArr = array_merge($array1, $array2);

// 统计每个元素的出现次数
$counts = array_count_values($mergedArr);

// 过滤仅保留出现次数为1的元素
$filteredArr = array_filter($mergedArr, function($value) use ($counts) {
    return $counts[$value] === 1;
});

// 重置数组索引(可选,若需要连续的数字索引可执行这一步)
$result = array_values($filteredArr);

// 输出结果
print_r($result);

输出结果

Array
(
    [0] => 5
    [1] => 4
    [2] => 7
    [3] => 8
    [4] => 10
)

逻辑说明

  1. 用array_merge()完成两个数组的合并,和你原有操作一致
  2. 用array_count_values()统计合并后数组中每个元素的出现频次,返回以元素值为键、出现次数为值的关联数组
  3. 用array_filter()遍历合并后的数组,仅保留出现次数等于1的元素
  4. 若需要连续的数字索引,调用array_values()重置索引即可

内容的提问来源于stack exchange,提问作者Jinal Gajera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 09:57:03