$_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']; |
на сколько я помню 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); |
Да спасибо, мне тоже нравиться кратко =))
Спустя 3 минуты, 11 секунд (8.02.2011 - 16:57) Snus написал(а):
Ulan
Да, краткость - сестра таланта!
Да, краткость - сестра таланта!

_____________
kuzroman@list.ru