mt_rand

(PHP 3>= 3.0.6, PHP 4 , PHP 5)

mt_rand -- Genera un valore casuale migliore

Descrizione

int mt_rand ( [int min, int max])

Molti generatori di numeri casuali di vecchie libc hanno caratteristiche dubbie o sconosciute e sono lenti. Di default, PHP usa il generatore di numeri casuali libc con la funzione rand(). La funzione mt_rand() è un sostituto per questa. Usa un generatore di numeri casuali con caratteristiche conosciute, il Mersenne Twister, il quale assicura numeri casuali che potrebbero essere utilizzati per scopi crittografici e (vedere la homepage per i dettagli) e che è mediamente quattro volte più veloce di libc.

Se invocata senza i parametri opzionali min, max, mt_rand() restituisce un valore pseudo-casuale compreso fra 0 e RAND_MAX. Se ad esempio si desidera un numero casuale compreso fra 5 e 15 (inclusi), usare mt_rand (5, 15).

Esempio 1. Esempio per mt_rand()

<?php
echo mt_rand() . "\n";
echo
mt_rand() . "\n";
echo
mt_rand(5, 15);
?>

L'esempio precedente visualizzerà qualcosa simile a:

1604716014 
1478613278 
6

Nota: Come in PHP 4.2.0, non vi è necessità di inizializzare il generatore di numeri casuali con srand() oppure con mt_srand() poichè viene eseguito in modo automatico.

Nota: Nelle versioni precedenti la 3.0.7 il significato di max era range. Per ottenere lo stesso risultato in queste vecchie versioni un breve esempio dovrebbe essere il seguente: mt_rand (5, 11), si otterrà un numero casuale compreso fra 5 e 15.

Vedere anche mt_srand(), mt_getrandmax() e rand().