php获取数组中重复数据的两种方法

分享下php获取数组中重复数据的两种方法。

1,利用php提供的函数,array_unique和array_diff_assoc来实现

<?php
function FetchRepeatMemberInArray($array) {
// 去掉重复数据的数组
$unique_arr = array_unique ( $array );
// 获取重复数据的数组
$repeat_arr = array_diff_assoc ( $array, $unique_arr );
return $repeat_arr;
}

// 测试
$array = array (
'apple',
'iphone',
'miui',
'apple',
'orange',
'orange' 
);
$repeat_arr = FetchRepeatMemberInArray ( $array );
print_r ( $repeat_arr );
/**
* 去除数组中的重复数据
* by www.jbxue.com
*/
?>

2,使用两次for循环,过滤重复数据

<?php
/**
* 两次for循环去除数组中的重复数据
* by www.jbxue.com
*/
function FetchRepeatMemberInArray($array) {
$len = count ( $array );
for($i = 0; $i < $len; $i ++) {
for($j = $i + 1; $j < $len; $j ++) {
if ($array [$i] == $array [$j]) {
$repeat_arr [] = $array [$i];
break;
}
}
}
return $repeat_arr;
}

// 测试
$array = array (
'apple',
'iphone',
'miui',
'apple',
'orange',
'orange' 
);
$repeat_arr = FetchRepeatMemberInArray ( $array );
print_r ( $repeat_arr );
?>

 

posted @ 2013-07-25 06:46  一觉睡到天黑黑  阅读(3222)  评论(0编辑  收藏  举报