我有多个重复值的数组。现在我想得到那些重复的值。
$roQ = Array
(
[0] => 2123
[1] => 2094
[2] => 2105
[3] => 2160
[4] => 2143
[5] => 2148
[6] => 2154
[7] => 2155
[8] => 2145
[9] => 2123
[10] => 2149
[11] => 2143
[12] => 2145
)
我尝试使用不起作用的代码。它返回不正确的结果。 如何获取新数组中的所有重复值。
$c = array_count_values($roQ);
$val = array_search(max($c), $c);
$azq[] = $val;
答案 0 :(得分:0)
尝试 -
$arr = array(1, 4, 6, 1, 8, 9, 4, 6);
$unique = array_unique($arr);
$duplicates = array_diff_assoc($arr, $unique);
var_dump($duplicates);
答案 1 :(得分:0)
$roQ = Array
(
[0] => 2123
[1] => 2094
[2] => 2105
[3] => 2160
[4] => 2143
[5] => 2148
[6] => 2154
[7] => 2155
[8] => 2145
[9] => 2123
[10] => 2149
[11] => 2143
[12] => 2145
)
for($i=0; $i<= count($roQ), $i++){
if(!in_array($roQ[$i],$arr){
$unique_value[] = $roQ[$i];
}else {
$dublicate_array[]=$roQ[$i]
}
array_push($arr, $req[$i]);
}
答案 2 :(得分:0)
尝试使用此代码,它会在数组中显示重复的元素。
$array = array(
0 => 2123,
1 => 2094,
2 => 2105,
3 => 2160,
4 => 2143,
5 => 2148,
6 => 2154,
7 => 2155,
8 => 2145,
9 => 2123,
10 => 2149,
11 => 2143,
12 => 2145
);
$arrayNew = array_count_values($array);
$finalArr = array ();
$i=0;
foreach ($arrayNew as $key => $Array_new){
if($Array_new>1){
$finalArr[$i] = $key;
$i++;
}
}
echo "<pre>";
print_r($finalArr);
exit;
}