-
[PHP]Array random
Ciao a tutti, non so bene come spiegarmi il mio problema per questo vi faccio un esempio...
Ho un array che contiene dei numeri, e devo fare di prendere solo 10 numeri in modo casuale pensavo si usare "rand()" ma il problema come posso fare di verificare se il numero già non è uscito...
Avete qualche soluzione...
-
Così su due piedi:
Codice PHP:
$da_estrarre[]; //array da estrarre
$estratti[]; //array nuovo
if(count(array_unique($da_estrarre)) > 9) //altrimenti andiamo in loop infinito eheh
for($i=0;$i<10;)
{
$k = rand(0,count($da_estrarre));
if(!in_array($da_estrarre[$k], $estratti))
$estratti[$i++] = $da_estrarre[$k];
}
...non ho provato se funziona, ma il metodo dovrebbe essere quello più o meno...
Ciao!
-
Il problema che certe volte invece di generare 5 risultati, ne stampa solo 4...
Codice PHP:
<?php
$array3 = array(); //array da estrarre
$estratti = array();
$count3 = count($array3);// lunghezza 8
if(count(array_unique($array3)) > "4"){
for($i=0;$i<5;){
$k = rand(1,$count3);
if(!in_array($array3[$k],$estratti)){
$estratti[$i++] = $array3[$k];
}}}
$count_estr = count($estratti);
$num = (($count_estr < "5") ? $count_estr : "5");
for($i=0;$i<$num;$i++){
echo $estratti[$i];
}?>
Non capisco perché...