Generar un número aleatorio en PHP

Generar un número aleatorio en PHP
Generar un número diferente cada vez ejecutando el script se llama número aleatorio. El número aleatorio se puede utilizar para diversos fines en la programación, como generar un nombre de archivo aleatorio, una contraseña aleatoria y un número aleatorio que no es predecible para otros. PHP tiene muchas funciones integradas para generar números aleatorios de diferentes maneras. rand (), Random_int (), y mt_rand () Las funciones se usan en PHP para generar números aleatorios. Cómo se utiliza estas funciones para generar los números aleatorios se explican en este tutorial.

Uso de rand ()

Esta función se utiliza para generar un número entero aleatorio. La sintaxis de esta función se da a continuación.

Sintaxis:

int rand ()

o

int rand (int min, int max)

Devuelve un gran número entero aleatorio si no se usa ningún parámetro en la función. Si se proporcionan dos valores de argumento en esta función, devolverá un número entero aleatorio basado en los valores del argumento. El uso de esta función se muestra a continuación.

Ejemplo 1: Diferentes usos de la función rand ()

El siguiente ejemplo muestra los tres usos diferentes del rand () función para generar un número aleatorio. Al principio, el rand () la función se llama dos veces sin ningún argumento para mostrar cómo se generan los números aleatorios de forma predeterminada. A continuación, se llama dos veces con dos valores mínimos y máximos diferentes. Por fin, se llama dos veces con el operador bitwise.

// uso de la función rand () sin argumento
eco "

El número aleatorio usando rand () sin argumento:

";
eco "

El primer número aleatorio: ". rand (). "

";
eco "

El segundo número aleatorio: ". rand (). "

";
// Uso de la función rand () con argumentos
eco "

El número aleatorio usando rand () definiendo los argumentos:

";
eco "

El primer número aleatorio dentro del rango [10-100]: ". Rand (10,100). "

";
eco "

El segundo número aleatorio dentro del rango [100-500]: ". Rand (100,500). "

";
// Uso de la función rand () con operador bitwise
eco "

El número aleatorio usando rand () usando el operador bitwise:

";
Echo "El primer número aleatorio usando el operador bitwise (&) con 10:";
echo rand () y 10;
eco "
El segundo número aleatorio usando operador bitwise (&) con 50: ";
Echo rand () y 50;
?>

Producción:

Aparecerá una salida similar después de ejecutar el script desde el servidor. La primera salida muestra dos grandes números diferentes. En la segunda salida, el primer número aleatorio se ha generado dentro del rango de 10 a 100, y el segundo número aleatorio se ha generado dentro del rango de 100 a 500. En la tercera salida, el primer número aleatorio se ha generado dentro del rango de 0 a 10, y el segundo número aleatorio se ha generado dentro del rango de 0 a 50.

Uso de Random_int ()

Esta función se utiliza para generar un número aleatorio criptográfico pseudo seguro. La función de llamada del sistema getrandom (2) se usa en Ubuntu para generar el número aleatorio criptográfico. Esta función es más segura que la rand () función porque el número generado no es predecible. Pero Random_int () es más lento que rand () función. La sintaxis de esta función se da a continuación.

Sintaxis:

int random_int (int min, int max)

Se utilizan dos argumentos en la función para establecer el rango para generar un número aleatorio criptográfico. El primer argumento se usa para establecer el valor más bajo, y el segundo argumento se usa para establecer el valor más alto del número. El uso de esta función se muestra a continuación.

Ejemplo 2: diferentes usos de la función random_int ()

El siguiente ejemplo muestra el uso de la Random_int () función para generar el número aleatorio proporcionando los valores mínimos y máximos. Estos valores pueden ser un número entero o flotante, pero el mínimo no puede ser mayor que el valor máximo. En el primero Random_int () función, los números enteros positivos se utilizan como valores mínimos y máximos. En el segundo Random_int () función, el número entero negativo se usa como mínimo, y el número entero positivo se usa como un valor máximo. En el tercero Random_int () función, los números flotantes se utilizan como valores mínimos y máximos.

// Establecer los valores positivos de Min y positivos máximos
eco "

La salida de Random_Int () con los valores MIN y Max positivos: " .Random_int (1000, 10000). "

";
// Establezca los valores MIN negativos y Max positivos
eco "

La salida de Random_int () con los valores negativos de MIN y MAX positivos: " .Random_int (-500, 10000). "

";
// Establezca los valores de Min y Max fraccionales
eco "

La salida de Random_int () con los valores de Min y Max fraccionales: " .Random_int (0.67, 54.89). "

";
?>

Producción:
La siguiente salida similar aparecerá después de ejecutar el script desde el servidor.

Uso de mt_rand ()

Esta función se utiliza para generar números pseudo-aleatorios de alta calidad utilizando el Mersenne Twister generador. Funciona más rápido que el rand () función. La sintaxis de esta función se da a continuación.

Sintaxis:

int mt_rand (int min, int max)

Como el rand () función, puede tomar dos argumentos para establecer los valores MAX y MIN, y esta función también se puede usar sin ningún argumento. El uso de esta función se muestra a continuación.

Ejemplo 3: Diferentes usos de la función MT_RAND ()

El siguiente ejemplo muestra el uso de mt_rand () función con y sin los argumentos. La primera mt_rand () La función se llama sin ningún argumento que generará un número entero de abundancia. El segundo mt_rand () La función se llama con el valor mínimo y máximo que generará un número dentro del rango definido.

// uso de la función mt_rand () sin argumento
eco "

El número aleatorio generado usando mt_rand () sin argumento:

";
eco "

". mt_rand (). "

";
// uso de la función mt_rand () con los argumentos
eco "

El número aleatorio generado usando mt_rand () definiendo los argumentos:

";
eco "

". MT_RAND (15,150). "

";
?>

Producción:
La siguiente salida similar generará después de ejecutar el script desde el servidor. La primera salida muestra que se ha generado un número de entero grande cuando no se usa ningún argumento en el mt_rand () función. La segunda salida muestra que se ha generado un número dentro del rango de 15 a 150.

Conclusión

Se han explicado tres formas diferentes de generar un número aleatorio en PHP en este tutorial utilizando ejemplos simples. Es mejor usar el Random_int () función cuando la seguridad es importante, pero es mejor usar el mt_rand () función cuando se requiere generar el número aleatorio más rápido. rand () la función se puede usar para generar un número aleatorio simple.