În ordine aleatorie, nu există numere repetate

Ce este cel mai bun mod de a face un "aleator" aleator fără a repeta vreun număr?

for ($i = 1; $i <= 10; $i++) {
    echo $i;
}

Cred că unele moduri, dar sunt atât de complicate cu o cantitate foarte mare de cod .. Există o funcție standard pentru a face ceea ce îmi doresc?

0

3 răspunsuri

$numbers = range(1,10);
shuffle($numbers);
foreach($numbers as $i) {
   //do stuff
}

Acest lucru vă va oferi numerele de la 1 la 10 fără a se repeta în ordine aleatorie.

0
adăugat
$range = range(1,10);
shuffle($range);
foreach ($range as $i) {
    echo $i;
}
0
adăugat

Creați o matrice cu un număr de numere și apoi amestecați:

$array = range(1, 10);
shuffle($array);
for ($i=0,$c=count($array); $i<$c; $i++) {
    echo $array[$i] . "\n";
}
0
adăugat
PHP România, Moldova
PHP România, Moldova
173 participanți

Vorbim despre Yii, Laravel, Symphony, MySQL, PgSQL, WP, OpenCart... Pentru confort, opriți notificările. Parteneri: https://ciupacabra.com @js_ro @node_ro @python_ro @seo_ro @Romania_Bot Offtop: @holywars_ro Joburi: @php_job @Grupuri_IT