日期:2014-05-17  浏览次数:20416 次

如何判断数组里面有多少个相同元素?

$a=array('2','1','2');//如何判断里面有几个相同的元素,并且知道相同的元素在什么位置

求指点谢谢

------解决方案--------------------
$a = array('2','1','2');
$xt = array_diff(array_count_values($a), array(1));
print_r($xt);

foreach(array_keys($xt) as $v) {
  echo $v, ': ', join(',', array_keys(array_filter($a, function($c) use ($v) { return $c == $v; })));
}

Array
(
    [2] => 2
)
2: 0,2