2010-12-06 3 views

ответ

3

Поскольку вы просто ищете 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."; 
11

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 
) 
2

Хаим правильно. Однако раньше у меня были проблемы с параметрами array_count_values. Поэтому, если вы уже знаете, какое значение вы проверяете, и не нуждаетесь в других. Цикл и счетчик могут быть быстрее. Я бы оценил.

EDIT

То есть, если массив не меньше 1000-10,000 элементов. Тогда это, вероятно, слишком мало, чтобы иметь значение.

Смежные вопросы