ciao a tutti
Ho un array
array('a', 'b', 'c', 'd', 'e','a','b','a','a','d','a','a');
e vorrei estrarre il volore piu presente nell'array
cioe "a".
come posso fare?
grazie e ciao
Pietro
ciao a tutti
Ho un array
array('a', 'b', 'c', 'd', 'e','a','b','a','a','d','a','a');
e vorrei estrarre il volore piu presente nell'array
cioe "a".
come posso fare?
grazie e ciao
Pietro
www.meteowebcam.it
La migliore raccolta di webcam meteo Italiane
www.creazionigrafiche.com
Grafica e siti web d'autore
costruisci un array in cui le chiavi sono i valori del tuo array, ed i valori le frequenze.
Insomma un qualcosa di simile a (sto scrivendo al volo):
Codice PHP:
$aSource = array('a', 'b', 'c', 'd', 'e','a','b','a','a','d','a','a');
$aFreq = array ();
foreach ($aSource as $aKey){
if (!isset ($aFreq [$aKey])){
$aFreq [$aKey] = 0;
}
$aFreq [$aKey]++;
}
print_r ($aFreq);
In italiano:
1. Crei un array vuoto
2. Effettui un ciclo foreach per ogni elemento dell'array originale
3. Utilizzi il valore corrente del foreach come chiave nell'array creato al punto 1 ed incrementi di un (es. $counts[$element] = isset($counts[$element]) ? $counts[$element] + 1 : 0
4. Quando hai finito il cliclo del punto 2 utilizzi arsort per ordinare l'array del punto 1.
5. La chiave del primo valore dell'array del punto 1 conterrà l'elemento più ripetuto (vedi le funzioni reset() e key() per estratlo).