(PHP 4, PHP 5, PHP 7, PHP 8)
srand — Semeia o gerador de números aleatórios
Semeia o gerador de números aleatórios com seed
ou com um valor aleatório se seed for 0.
Nota: Não é necessário inicializar o gerador de números aleatórios com srand() ou mt_srand(), pois isso é feito automaticamente.
Como o mecanismo Mt19937 (“Mersenne Twister”) aceita apenas um único inteiro de 32 bits como semente, o número de sequências aleatórias possíveis é limitado a apenas 232 (ou seja, 4.294.967.296), embora o Mt19937 possua um gigantesco período de 219937-1.
Ao depender da geração aleatória implícita ou explícita de sementes, as duplicações aparecerão muito mais cedo. Sementes duplicadas são esperadas com probabilidade de 50% depois de menos de 80.000 sementes geradas aleatoriamente de acordo com o problema do aniversário. Uma probabilidade de 10% de uma semente duplicada acontece depois de gerar aleatoriamente cerca de 30.000 sementes.
Isso torna o Mt19937 inadequado para aplicações em que sequências duplicadas não devem ocorrer com mais do que uma probabilidade desprezível. Se a geração reproduzível de sementes for necessária, ambos os mecanismos Random\Engine\Xoshiro256StarStar e Random\Engine\PcgOneseq128XslRr64 suportam sementes muito maiores que são improváveis de colidir aleatoriamente. Se a reprodutibilidade não for necessária, o mecanismo Random\Engine\Secure fornece aleatoriedade criptograficamente segura.
Nota: A partir do PHP 7.1.0, srand() tornou-se um apelido de mt_srand().
seed
Preenche o estado com valores gerados com um gerador congruente linear
que foi propagado com seed interpretado como um número
inteiro sem sinal de 32 bits.
Se seed for omitido ou null, um número inteiro aleatório
e sem sinal de 32 bits será usado.
Nenhum valor é retornado.
| Versão | Descrição |
|---|---|
| 8.3.0 |
seed agora é anulável.
|
| 7.1.0 | srand() foi transformado em um apelido de mt_srand(). |