Всем доброго времени суток. Не могу подсчитать количество повторяющихся значения в цикле, листаю массив $category_data Код (Text): foreach($category_data as $category){ echo '<pre>'; print_r($category); echo '</pre>'; } - вывожу и получаю следующее: Код (Text): Array ( [category_id] => 70 [language_id] => 1 [name] => Офисные кресла [description] => [meta_description] => Офисные кресла [meta_keyword] => Офисные кресла [seo_title] => Офисные кресла [seo_h1] => Офисные кресла ) Array ( [category_id] => 65 [language_id] => 1 [name] => Столы для дома [description] => [meta_description] => Столы для дома [meta_keyword] => Столы для дома [seo_title] => Столы для дома [seo_h1] => Столы для дома ) Array ( [category_id] => 59 [language_id] => 1 [name] => Мебель для дома [description] => [meta_description] => Мебель для дома [meta_keyword] => Мебель для дома [seo_title] => Мебель для дома [seo_h1] => Мебель для дома ) Array ( [category_id] => 65 [language_id] => 1 [name] => Столы для дома [description] => [meta_description] => Столы для дома [meta_keyword] => Столы для дома [seo_title] => Столы для дома [seo_h1] => Столы для дома ) как посчитать повторения по ключу - [category_id]?
подозреваю, что значения пришли из базы. там элементарно Код (Text): SELECT category_id, COUNT(*) FROM somewhere GROUP BY category_id если таки на PHP, то внутри цикла поставь Код (PHP): $counters[$category['category_id']]++; в итоге у тебя будет массив счетчиков по каждой категории.
мистер советчик рогнорог, ты или объясни суть своего мистического решения, или пиздабол viewtopic.php?p=414945#p414945
Немного не пойму вашего вопроса). Есть массив данных которые я получаю и обрабатываю (листаю). В этих массивах есть повторяющиеся значения. По уникальному ключу этих массивов я хочу посчитать сумму ПОВТОРЯЮЩИХСЯ значений в этих массивах.
Код (Text): $i=0; foreach($category_data as $category){ if(что то == чему то) $i++; echo '<pre>'; print_r($category); echo '</pre>'; }
Код (PHP): $array=array( 'key1'=>'1', 'key2'=>'1', 'key3'=>'2', 'key4'=>'2', 'key5'=>'3' ); $array=array_count_values($array); $i=0; foreach($array as $value) { if(1<$value) { $i+=$value; } } echo $i; //4
Кусок "По уникальному ключу этих массивов " здесь лишний, не? Ты пробовал то, что я посоветовал в первом комментарии?