Gerar um número aleatório no PHP

Gerar um número aleatório no PHP
Gerando um número diferente sempre, executando o script é chamado de número aleatório. O número aleatório pode ser usado para vários propósitos na programação, como gerar um nome de arquivo aleatório, senha aleatória e um número aleatório que não é previsível para outros. PHP tem muitas funções internas para gerar números aleatórios de maneiras diferentes. rand (), Random_int (), e mt_rand () As funções são usadas no PHP para gerar números aleatórios. Como essas funções são usadas para gerar os números aleatórios são explicados neste tutorial.

Uso de rand ()

Esta função é usada para gerar um número inteiro aleatório. A sintaxe desta função é dada abaixo.

Sintaxe:

int rand ()

ou

int rand (int min, int max)

Ele retorna um grande número inteiro aleatório se nenhum parâmetro for usado na função. Se dois valores de argumento forem fornecidos nesta função, ele retornará um número inteiro aleatório com base nos valores do argumento. O uso desta função é mostrado abaixo.

Exemplo 1: Diferentes usos da função rand ()

O exemplo a seguir mostra os três usos diferentes do rand () função para gerar um número aleatório. A princípio, o rand () A função é chamada duas vezes sem nenhum argumento para mostrar como os números aleatórios são gerados por padrão. Em seguida, é chamado duas vezes com dois valores mínimos e máximos diferentes. Por fim, é chamado duas vezes com o operador bitwise.

// uso de rand () função sem argumento
eco "

O número aleatório usando rand () sem argumento:

";
eco "

O primeiro número aleatório: ". rand (). "

";
eco "

O segundo número aleatório: ". rand (). "

";
// Uso de rand () função com argumentos
eco "

O número aleatório usando rand () definindo os argumentos:

";
eco "

O primeiro número aleatório dentro do intervalo [10-100]: ". Rand (10.100). "

";
eco "

O segundo número aleatório dentro do intervalo [100-500]: ". Rand (100.500). "

";
// Uso de rand () Função com operador bit netwise
eco "

O número aleatório usando rand () usando operador bitwise:

";
eco "o primeiro número aleatório usando o operador bit -bit (&) com 10:";
eco rand () e 10;
eco "
O segundo número aleatório usando o operador bit -newise (&) com 50: ";
eco rand () e 50;
?>

Saída:

Uma saída semelhante aparecerá após a execução do script do servidor. A primeira saída mostra dois grandes números diferentes. Na segunda saída, o primeiro número aleatório foi gerado dentro da faixa de 10 a 100, e o segundo número aleatório foi gerado dentro da faixa de 100 a 500. Na terceira saída, o primeiro número aleatório foi gerado dentro da faixa de 0 a 10, e o segundo número aleatório foi gerado dentro da faixa de 0 a 50.

Uso de Random_int ()

Esta função é usada para gerar um número aleatório criptograficamente pseudo -seguro. A função de chamada do sistema getrandom (2) é usado no Ubuntu para gerar o número aleatório criptográfico. Esta função é mais segura do que a rand () função porque o número gerado não é previsível. Mas Random_int () é mais lento que rand () função. A sintaxe desta função é dada abaixo.

Sintaxe:

int random_int (int min, int max)

Dois argumentos são usados ​​na função para definir o intervalo para gerar um número aleatório criptográfico. O primeiro argumento é usado para definir o menor valor, e o segundo argumento é usado para definir o valor mais alto do número. O uso desta função é mostrado abaixo.

Exemplo 2: Diferentes usos da função Random_int ()

O exemplo a seguir mostra o uso do Random_int () função para gerar o número aleatório, fornecendo os valores mínimo e máximo. Esses valores podem ser um número inteiro ou flutuante, mas o mínimo não pode ser maior que o valor máximo. Em primeiro Random_int () função, os números inteiros positivos são usados ​​como os valores mínimo e máximo. No segundo Random_int () função, o número inteiro negativo é usado como um mínimo, e o número inteiro positivo é usado como um valor máximo. No terceiro Random_int () função, os números flutuantes são usados ​​como os valores mínimo e máximo.

// Defina os valores positivos de min e positivo
eco "

A saída de random_int () com os valores Min positivos e máximos: " .Random_int (1000, 10000). "

";
// Defina os valores negativos de min e positivos
eco "

A saída de Random_int () com os valores negativos Min e positivos max: " .Random_int (-500, 10000). "

";
// Defina os valores fracionários de min e máximo
eco "

A saída de Random_int () com os valores fracionários mínimos e max: " .Random_int (0.67, 54.89). "

";
?>

Saída:
A seguinte saída semelhante aparecerá após a execução do script do servidor.

Uso de mt_rand ()

Esta função é usada para gerar números de pseudo-aleatom de alta qualidade usando o Mersenne Twister gerador. Funciona mais rápido que o rand () função. A sintaxe desta função é dada abaixo.

Sintaxe:

int mt_rand (int min, int max)

Como o rand () função, pode levar dois argumentos para definir os valores máximos e min, e essa função também pode ser usada sem argumentos. O uso desta função é mostrado abaixo.

Exemplo 3: Diferentes usos da função mt_rand ()

O exemplo a seguir mostra o uso de mt_rand () função com e sem os argumentos. O primeiro mt_rand () A função é chamada sem qualquer argumento que gerará um número inteiro grande. O segundo mt_rand () A função é chamada com o valor mínimo e máximo que gerará um número dentro do intervalo definido.

// Uso da função mt_rand () sem argumento
eco "

O número aleatório gerado usando mt_rand () sem argumento:

";
eco "

". mt_rand (). "

";
// Uso da função mt_rand () com os argumentos
eco "

O número aleatório gerado usando mt_rand () definindo os argumentos:

";
eco "

". mt_rand (15.150). "

";
?>

Saída:
A saída semelhante a seguir gerará após a execução do script do servidor. A primeira saída mostra que um número inteiro grande foi gerado quando nenhum argumento é usado no mt_rand () função. A segunda saída mostra que um número dentro do intervalo de 15 a 150 foi gerado.

Conclusão

Três maneiras diferentes de gerar um número aleatório no PHP foram explicadas neste tutorial usando exemplos simples. É melhor usar o Random_int () função quando a segurança é importante, mas é melhor usar o mt_rand () função quando é necessário para gerar o número aleatório mais rápido. rand () A função pode ser usada para gerar um número aleatório simples.