PHP | función random_int()

El random_int() es una función incorporada en PHP. La función principal es generar valores enteros pseudoaleatorios criptográficamente seguros. Cuando se producen resultados imparciales en condiciones críticas, se utilizan enteros aleatorios criptográficos generados.
Las diferentes fuentes de aleatoriedad utilizadas en esta función se dan a continuación: – 

  • Ventana: función CryptGenRandom() utilizada.
  • Linux: se utilizará la función de llamada al sistema getrandom(2).

Sintaxis:  

int random_int ( $min, $max )

Parámetro: 

  • $min: valor más bajo devuelto , que es igual a PHP_INT_MIN o superior.
     
  • $max: valor más alto devuelto , que es menor o igual a PHP_INT_MAX.
     

Valor de retorno: un número entero aleatorio criptográficamente seguro en el rango mínimo a máximo inclusive. 
Ejemplos: 

Input : min= 10, max=10000
Output : int(5183)

Input : min= -244441, max= 1
Output : int(-60209)

Los siguientes programas ilustran la función random_int() en PHP. 
Programa 1:

php

<?php
// PHP program to demonstrate
// the random_int() function
 
// given min and max range
var_dump(random_int(1, 5555555));
var_dump(random_int(-1, 100000));
var_dump(random_int(9, 10));
 
?>

Producción  

int(835427)
int(86695)
int(10)

Los siguientes programas ilustran la función random_int() en PHP.
Programa 2: 
cuando el rango de escritura no es válido, se trata de errores de tiempo de ejecución. 

php

<?php
// PHP program to demonstrate
// the random_int() function
 
// given min and max range
// Not valid range
$t = (random_int(99, 11));
 
// Print result
echo "(int)", $t;
?>

Producción  

Runtime Error

Error de excepción:  

  • parámetro inválido da TypeError .
  • La longitud de bytes no válida da error .
  • Si no se encuentra la fuente de aleatoriedad, se lanzará una excepción.

Referencias:  
http://php.net/manual/en/function.random-int.php

Publicación traducida automáticamente

Artículo escrito por jit_t y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *