我正在使用PHP中的一维数组。我想要检测重复值的存在,然后计算重复值的数量并输出结果。例如,给定以下数组:
$array = array('apple', 'orange', 'pear', 'banana', 'apple',
'pear', 'kiwi', 'kiwi', 'kiwi');
我想打印:
apple (2)
orange
pear (2)
banana
kiwi (3)
对于如何解决这个问题,有什么建议吗?
谢谢。
麦克
发布于 2009-07-23 10:14:47
您可以使用array_count_values函数
$array = array('apple', 'orange', 'pear', 'banana', 'apple',
'pear', 'kiwi', 'kiwi', 'kiwi');
print_r(array_count_values($array));
将输出
Array
(
[apple] => 2
[orange] => 1
[pear] => 2
etc...
)
发布于 2010-07-21 15:27:23
if(count(array_unique($array))<count($array))
{
// Array has duplicates
}
else
{
// Array does not have duplicates
}
发布于 2009-10-23 02:50:31
function array_not_unique( $a = array() )
{
return array_diff_key( $a , array_unique( $a ) );
}
https://stackoverflow.com/questions/1170807
复制相似问题