Nagaan hoe vaak dezelfde waarde in een array voorkomt
Door
Steven Hoogervorst
op 19-05-2013 14:51
gewijzigd op 19-05-2013 14:57
2.121 views
Dag allemaal!
Hoe kun je in php nagaan hoe vaak dezelfde waarde in een array voorkomt en het aantal in een array zetten?
array_count_values heb ik geprobeerd, zonder resultaat.
voorbeeld:
foreach($gaResults as $result) {
echo $result->getSource();
}
uitkomst:
google
google
(direct)
(direct)
(direct)
google
google
Zet aantallen in array:
Bron Google komt 4x voor
Directe bezoekers komen 3x voor
Tuurlijk, dit was puur even om aan te geven dat $rcnt een array is met de gevraagde waardes. Je kunt de afzonderlijke waardes ophalen met $rcnt['google'] en $rcnt['(direct)'].
Want nu wil ik eigenlijk hetgeen dat bij print_r uitkomt in een array zetten:
$array = array('google' => '4', '(direct)' => '3');
[size=xsmall]Toevoeging op 19/05/2013 15:46:22:[/size]
Wat ik nu heb is dit:
<?php
foreach($gaResults as $result) {
$rcnt = array_count_values($result->getSource());
echo $rcnt['google'];
}
?>
Maar dit heeft geen enkele waarde...
Want nu wil ik eigenlijk hetgeen dat bij print_r uitkomt in een array zetten:
$array = array('google' => '4', '(direct)' => '3');
Je bent lekker omslachtig bezig. ;-) print_r toont namelijk de inhoud van de array $rcnt, dus wat je wilt hebben, heb je al lang. Dat is de array $rcnt (uitgaande van de code uit mijn eerste bericht).
De code uit je laatste bericht is ook omslachtig. Je haalt waardes op, zet ze in een string met spaties ertussen, en breekt vervolgens de string op in een array. Waarom zet je het dan niet meteen in een array? ;-)