(PHP 4, PHP 5, PHP 7, PHP 8)
rand — Generate a random integer
If called without the optional min
, max
arguments rand() returns a pseudo-random integer between 0 and getrandmax(). If you want a random number between 5 and 15 (inclusive), for example, use rand(5, 15)
.
Esta função não gera valores criptograficamente seguros e não deve ser usada para propósitos criptográficos ou fins que exijam que os valores retornados sejam impossíveis de adivinhar.
Se aleatoriedade criptograficamente segura for necessária, a classe Random\Randomizer pode ser usada com o mecanismo Random\Engine\Secure. Para casos de uso simples, as funções random_int() e random_bytes() fornecem uma API conveniente e segura que é garantida pelo CSPRNG do sistema operacional.
Nota: On some platforms (such as Windows), getrandmax() is only 32767. If you require a range larger than 32767, specifying
min
andmax
will allow you to create a range larger than this, or consider using mt_rand() instead.
Nota: As of PHP 7.1.0, rand() uses the same random number generator as mt_rand(). To preserve backwards compatibility rand() allows
max
to be smaller thanmin
as opposed to returningfalse
as mt_rand().
min
The lowest value to return (default: 0)
max
The highest value to return (default: getrandmax())
A pseudo random value between min
(or 0) and max
(or getrandmax(), inclusive).
Versão | Descrição |
---|---|
7.2.0 | rand()has received a bug fix for a modulo bias bug. This means that sequences generated with a specific seed may differ from PHP 7.1 on 64-bit machines. |
7.1.0 | rand()has been made an alias of mt_rand(). |
Exemplo #1 rand() example
<?php
echo rand(), "\n";
echo rand(), "\n";
echo rand(5, 15), "\n";
?>
O exemplo acima produzirá algo semelhante a:
7771 22264 11
min
max
range must be within the range getrandmax(). i.e. (max
- min
) <= getrandmax() Otherwise, rand() may return poor-quality random numbers.