<?php $total = 0; for ($i=0;$i<count($tab); $i++) $total += $tab[$i]; $rdNumber = rand() * $total; $seek = 0; $resultat = 0; for ($i=0; $i<count($tab); $i++) { if ($rdNumber <= $seek+$tab[$i]) { $resultat = $i; break; } $seek += $tab[$i]; } echo 'Le résultat gagnant est le ' . $resultat; ?>
<?php $tab[0] = 5; $tab[1] = 10; $tab[2] = 100; $tab[3] = 1000; $tab[4] = 900; asort($tab); $total = array_sum($tab); $rdNumber = mt_rand(0, $total); $seek = 0; foreach($tab as $k=>$v) { if ($rdNumber <= $seek+= $v) { $resultat = $k; break; } } ?>
$rdNumber = rand() * $total;
$rdNumber = mt_rand(0, $total);
<?php $total = 2015; $rdNumber = rand() * $total; // => 47638630 $rdNumber = mt_rand(0, $total); // => 1670 ?>