Volevo sapere se qualcuno può auitarmi.
Ho un array che vado a riempire in dinamico con valori numerici.
Come possa fare la conta di quanti valori uguali ci sono dentro a questo array?
Grazie Mille in anticipo
Volevo sapere se qualcuno può auitarmi.
Ho un array che vado a riempire in dinamico con valori numerici.
Come possa fare la conta di quanti valori uguali ci sono dentro a questo array?
Grazie Mille in anticipo
Cosa vuol dire esattamente "quanti valori uguali ci sono dentro a questo array"? La differenza tra il numero di elementi e il numero di quelli unici? Se e' cosi' basta usare array_unique().
Io un array tipo questo:
Array ( [0] => 2 [1] => 13 [2] => 2 [3] => 7 [4] => 10 [5] => 6 [6] => 2 );
Io volevo controllare in dinamico che non ci siano più di 2 valori uguali in questo array (in questo esempio sono il valore "2" è presente per 3 volte). Mi servirebbe uno script che mi dica che i valori ripetuti sono:
val"2" ripetuto 3 volte
val"13" ripetuto 1 volta
val"7" ripetuto 1 volta
val"10" ripetuto 1 volta
val"6" ripetuto 1 volta
Non puoi invece modificare il codice che crea l'array? Sarebbe molto piu' semplice ed efficiente.
e come potrei far controllare se il valore è già presente e per quante volte??
Invece di inserire i valori nell'array, li usi come chiavi dell'array, e come valore usi il numero di volte che quella chiave viene usata. Esempio:
Codice PHP:
$array = array();
for ( $x = 0; $x < 50; $x++ ) {
$num = rand(1, 5);
if ( !isset($array[$num]) ) {
$array[$num] = 1;
} else {
$array[$num]++;
}
}
foreach ( $array as $key => $val ) {
echo "Il valore $key e' presente $val volte\n";
}
Prova ad usare:
dove $a è il tuo array ed $m è il valore massimo che possono assumere i singoli elementi.Codice PHP:
$m=1000;
$c=Array();
for($t=0;$t<$m;$t++){$c[$t]=0;};
for($t=0;$t<count($a);$t++){
$c[$a[$i]]++;
};
Alla fine nell'array $c trovi per ciascun indice il numero di volte che compare in $a.
Es: c$[3] conterrà il numero di elementi di $a che valgono 3.
Beh per quello puoi usare http://uk.php.net/manual/en/function...unt-values.php
Io consigliavo solo di fare il lavoro all'inizio.
anche in_array($valore,$array) fa egregiamente il suo lavoro
non te la spiego la funzione, parla da se
![]()
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb