[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Посчитать колличество элементов массива
kuzroman
есть такой массив:
 $_SESSION['arr_sravnenie']

в нем: Array ( [14441] => foto [17262] => foto [20509] => nout )

подскажите как посчитать колличество элементов массива где значение ключа равно foto?



Спустя 1 минута, 12 секунд (8.02.2011 - 16:01) Snus написал(а):
kuzroman
$sess =  $_SESSION['arr_sravnenie'];
echo count($sess);

Спустя 2 минуты, 7 секунд (8.02.2011 - 16:03) kuzroman написал(а):
Цитата (Snus @ 8.02.2011 - 13:01)
kuzroman
$sess =  $_SESSION['arr_sravnenie'];
echo count($sess);

на сколько я помню count($sess); вернет значение 3 т.е. посчитает колличество ключей в массиве. А мне нужно чтобы он вывел только 2 значения, т.к. всего 2 значения foto

Спустя 1 минута, 2 секунды (8.02.2011 - 16:04) Snus написал(а):
kuzroman
Не дочитал до конца твой пост...

Вот так

   $cnt = 0;
foreach($sess as $key => &$val){
if($key == 'foto') $cnt++;
}

echo $cnt;

Спустя 1 минута, 17 секунд (8.02.2011 - 16:06) alex12060 написал(а):
Array ( [14441] => foto [17262] => foto [20509] => nout ) 


Тебе надо посчитать: 14441 и 17262?

Спустя 1 минута, 21 секунда (8.02.2011 - 16:07) Snus написал(а):
kuzroman
Опять не так понял )))
   $cnt = 0;
foreach($sess as &$val){
if($val == 'foto') $cnt++;
}

echo $cnt;



А еще лучше вынеси в функцию

   function snusCount($arr, $key){
$cnt = 0;
foreach($arr as &$val){
if($val == $key) $cnt++;
}
return $cnt;
};

echo snusCount($sess, 'foto');


Спустя 20 минут, 14 секунд (8.02.2011 - 16:27) Ulan написал(а):
а так не проще? все уже придумано до нас :)
$res = array_count_values($sess);
echo $res['foto'];

Спустя 26 минут, 27 секунд (8.02.2011 - 16:54) kuzroman написал(а):
Цитата (Ulan @ 8.02.2011 - 13:27)
а так не проще? все уже придумано до нас :)
$res = array_count_values($sess);
echo $res['foto'];

Да спасибо, мне тоже нравиться кратко =))

Спустя 3 минуты, 11 секунд (8.02.2011 - 16:57) Snus написал(а):
Ulan
Да, краткость - сестра таланта! smile.gif


_____________
kuzroman@list.ru
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.