(PHP 4, PHP 5, PHP 7, PHP 8)
srand — Initialise le générateur de nombres aléatoires
Description
srand(int
$seed
= 0, int
$mode
=
MT_RAND_MT19937
): void
Note:
Il n'est pas nécessaire d'initialiser le générateur de nombres aléatoires avec
srand() ou mt_srand(), ceci est fait automatiquement.
Attention
Étant donné que le moteur Mt19937 ("Mersenne Twister") prend un seul entier de 32 bits en tant que
graine, le nombre de séquences aléatoires possibles est limité à seulement 232
(par exemple 4 294 967 296), malgré la période énorme de Mt19937 de 219937-1.
Quand on se fie à une graine aléatoire implicite ou explicite, les duplications apparaîtront
beaucoup plus tôt. Les graines dupliquées sont attendues avec une probabilité de 50% après moins de
80 000 graines générées aléatoirement selon le problème d anniversaire. Une probabilité de 10%
d une graine dupliquée se produit après avoir généré environ 30 000 graines de manière aléatoire.
Cela rend Mt19937 inadapté aux applications où les séquences dupliquées ne doivent pas se produire avec
plus qu une probabilité négligeable. Si une graine reproductible est requise, à la fois le
moteur Random\Engine\Xoshiro256StarStar et Random\Engine\PcgOneseq128XslRr64
supportent des graines beaucoup plus grandes qui sont peu susceptibles de se heurter de manière aléatoire. Si la reproductibilité
n'est pas requise, le moteur Random\Engine\Secure fournit des données aléatoires cryptographiquement
sécurisées.
Note:
Depuis PHP 7.1.0, srand() est un alias de mt_srand().
Liste de paramètres
-
seed
-
Un int d'initialisation arbitraire
Valeurs de retour
Aucune valeur n'est retournée.
Historique
Voir aussi
- rand() - Génère une valeur aléatoire
- getrandmax() - Plus grande valeur aléatoire possible
- mt_srand() - Initialise le générateur de nombres aléatoires Mersenne Twister