Как удалить некоторые элементы массива либо подсчитать их количество?
Есть массив, который может состоять только из нулей, либо только из единиц, для примера пускай будет array('1','0','0','1','1','1','1','1','1');
Как подсчитать количество всех единиц(либо нулей, не имеет значения), наиболее простым и производительным образом? Понятно, что можно просто пробегать for-циклом по всему массиву, но количество значений в массиве со временем могут достигать нескольких тысяч и с точки зрения производительности, мне кажется, это не совсем правильный вариант.
Arti Markelov: ну тут только перебор, но нативными функциями типа array_map, array_forEach. Мапом можно "да/нет" переделать в "1/0" и опять...
через функцию фильтр можно длину получившегося массива смотреть.
Опять же, про тысячи значений – а что-то до пхп может заняться этими значениями? Тут стоит вопрос про предназначение инструментов и т.д.
И вообще, неблагодарное это дело, оптимизировать циклы через выбор языковой конструкции — нужно оптимизировать алгоритмы.
Сергей Сергей: Нет, до php не получится ни на чём это делать. Ниже ответили про функцию array_count_values, я про неё совсем забыл, она мне отлично подошла. Ваш же ответ, как и ответ Дмитрий, полностью подходит под условие в вопросе, но я искал более универсальный метод, спасибо в любом случае.