mt_randGénère une valeur aléatoire via le générateur de nombre aléatoire Mersenne Twister
&reftitle.description;
intmt_randintmt_randintminintmax
&caution.cryptographically-insecure;
De nombreux générateurs de nombres aléatoires
provenant de vieilles bibliothèques libcs ont des comportements
douteux et sont très lents. mt_rand est une
fonction de remplacement pour rand. Elle utilise un
générateur de nombres aléatoire de caractéristique
connue, le " Mersenne Twister " qui
est 4 fois plus rapide que la fonction standard libc.
Appelée sans les arguments optionnels min et
max, mt_rand retourne un nombre
pseudoaléatoire, entre 0 et mt_getrandmax.
Pour obtenir un nombre entre 5 et 15 inclus, il faut utiliser
mt_rand(5,15).
&reftitle.parameters;
min
Valeur la plus basse qui peut être retournée (par défaut : 0)
max
Valeur la plus haute qui peut être retournée (par défaut : mt_getrandmax).
&reftitle.returnvalues;
Un &integer; aléatoire compris entre min (ou 0)
et max (ou mt_getrandmax, inclusif),
ou &false; si le paramètre max est inférieur à
min.
&reftitle.changelog;
&Version;&Description;7.2.0mt_rand a reçu une correction de bogue pour un bug de polarisation modulo. Cela signifie que les séquences générées avec une valeur d'initialisation spécifique peuvent différer de php 7.1 sur les machines 64-bit.
7.1.0rand est devenu un alias de mt_rand.
7.1.0mt_rand
a été mis à jour
pour utiliser la version corrigée, correcte, de l'algorithme Twister
Mersenne. Pour revenir à l'ancien comportement, utilisez
mt_srand avec MT_RAND_PHP
comme deuxième paramètre.
&reftitle.examples;
Exemple avec mt_rand
]]>
&example.outputs.similar;
&reftitle.notes;
La plage minmax doit se situer
dans la plage mt_getrandmax. i.e.
max - min) <=
mt_getrandmax sinon, mt_rand peut
retourner des nombres aléatoires plus pauvres qu'il ne le devrait.
&reftitle.seealso;
mt_srandmt_getrandmaxrandom_intrandom_bytesopenssl_random_pseudo_bytesrand