Является ли возможным получить количество «а» в массиве?Как подсчитать количество дубликатов ключей в массиве?
$array = array('a', 'a', 'a', 'a', 'b', 'b', 'c');
Является ли возможным получить количество «а» в массиве?Как подсчитать количество дубликатов ключей в массиве?
$array = array('a', 'a', 'a', 'a', 'b', 'b', 'c');
Поскольку вы просто ищете a
значений, можно также использовать array_keys
:
$array = array('a', 'a', 'a', 'a', 'b', 'b', 'c');
$count = count(array_keys($array, 'a', true));
echo "Found $count letter a's.";
array_count_values является то, что вам нужно
<?php
$array = array('a', 'a', 'a', 'a', 'b', 'b', 'c');
print_r(array_count_values($array));
?>
Приведенный выше пример выведет:
Array
(
[a] => 4
[b] => 2
[c] => 1
)
Хаим правильно. Однако раньше у меня были проблемы с параметрами array_count_values. Поэтому, если вы уже знаете, какое значение вы проверяете, и не нуждаетесь в других. Цикл и счетчик могут быть быстрее. Я бы оценил.
EDIT
То есть, если массив не меньше 1000-10,000 элементов. Тогда это, вероятно, слишком мало, чтобы иметь значение.
В PHP или на любом языке? – 2010-12-06 14:13:50