当一个数组中包含有重复的元素时,我们需要对重复元素进行处理并输出。下列是几种处理重复元素的方法:
PHP输出数组中重名的元素的几种处理方法
当一个数组中包含有重复的元素时,我们需要对重复元素进行处理并输出。下列是几种处理重复元素的方法:
方法一:循环遍历数组去除重复元素
在这个方法中,我们在遍历整个数组结束后得到新的数组,新的数组中不包含任何重复元素。
$arr = array(1, 2, 3, 1, 2, 4);
$newArr = array();
foreach ($arr as $val) {
if (!in_array($val, $newArr)) {
$newArr[] = $val;
}
}
print_r($newArr); // 输出结果为: Array ( [0] => 1 [1] => 2 [2] => 3 [4] => 4 )
方法二:使用array_unique()函数去除重复元素
我们可以使用array_unique()函数,将数组中的重复元素去除。
$arr = array(1, 2, 3, 1, 2, 4);
$newArr = array_unique($arr);
print_r($newArr); // 输出结果为:Array ( [0] => 1 [1] => 2 [2] => 3 [5] => 4 )
方法三:使用array_count_values()函数统计元素出现次数
我们可以使用array_count_values()函数来统计数组中每个元素出现的次数,然后根据次数来输出重复元素。
$arr = array(1, 2, 3, 1, 2, 4);
$countArr = array_count_values($arr);
foreach ($countArr as $key => $val) {
if ($val > 1) {
echo $key . ' 重复了 ' . $val . ' 次。<br/>';
}
}
// 输出结果为: 1 重复了 2 次。 2 重复了 2 次。
方法四:使用array_keys()和array_diff()函数输出重复元素
该方法使用array_keys()函数得到数组中重复元素的键名,再使用array_diff()函数输出这些重复的元素。
$arr = array(1, 2, 3, 1, 2, 4);
$repeatKeys = array_keys(array_count_values($arr),2);
$repeatArr = array_diff($arr, array_unique($arr));
print_r($repeatArr); // 输出结果为: Array ( [0] => 1 [1] => 2 )
在上述代码中,$repeatKeys中存储了在数组$arr中出现次数为2的元素的键名数组,$repeatArr中存储了重复的元素。
通过以上几种处理方法,便可方便地输出数组中的重复元素。
织梦狗教程
本文标题为:PHP输出数组中重名的元素的几种处理方法


基础教程推荐
猜你喜欢
- PHP filesize函数用法浅析 2022-12-22
- PHP二维数组如何按字段排序 2023-08-30
- ThimkPHP6使用$request获取参数的几种方法 2023-08-30
- PHP7扩展开发之基于函数方式使用lib库的方法详解 2022-10-05
- PHP多进程通信-消息队列使用 2022-12-30
- PHP mkdir创建文件夹实现方法解析 2023-05-02
- PHP设计模式之工厂模式定义与用法详解 2022-10-12
- php查看一个变量的占用内存的实例代码 2023-04-07
- yii2.0框架多模型操作示例【添加/修改/删除】 2023-04-07
- PHP微信支付功能示例 2023-01-04