gmp_random

(PHP 4 >= 4.0.4, PHP 5, PHP 7)

gmp_randomNúmero GMP aleatorio

Advertencia

Esta función ha sido declarada OBSOLETA a partir de PHP 7.2.0, y será ELIMINADA a partir de PHP 8.0.0. Su uso está totalmente desaconsejado.

Descripción

gmp_random(int $limiter = 20): GMP

Genera un número aleatorio. Este número estará comprendido entre cero y (2 ** n) -1, donde n es el número de bits por limb multiplicado por limiter. Si limiter es negativo, se genera un número negativo.

Un limb es un mecanismo interno de GMP. El número de bits en un limb no es estático, y puede variar entre los sistemas. En general, el número de bits por limb es 32 o 64, pero esto no está garantizado.

Precaución

Esta función no genera valores criptográficamente seguros y no debe ser utilizada para fines criptográficos o fines que requieran que los valores devueltos sean impredecibles.

Si se requiere aleatoriedad criptográficamente segura, se puede utilizar el Random\Randomizer con el motor Random\Engine\Secure. Para casos de uso simples, las funciones random_int() y random_bytes() proporcionan una API conveniente y segura respaldada por el CSPRNG del sistema operativo.

Parámetros

limiter

El limitador.

resource de número de GMP en PHP 5.5 y anterior, o un objeto de GMP en PHP 5.6 y posterior, o un string numérico siempre que sea posible convertirlo a un número.

Valores devueltos

Un número GMP aleatorio.

Ejemplos

Ejemplo #1 Ejemplo con gmp_random()

<?php
$rand1
= gmp_random(1); // número aleatorio de 0 a 1 * bits por limb
$rand2 = gmp_random(2); // número aleatorio de 0 a 2 * bits por limb

echo gmp_strval($rand1) . "\n";
echo
gmp_strval($rand2) . "\n";
?>

El resultado del ejemplo sería:

1915834968
8642564075890328087

add a note

User Contributed Notes 1 note

up
1
asphp at dsgml dot com
9 years ago
Warning: Do not use this function.

Use gmp_random_bits() or gmp_random_range() instead.

The documentation and the code for this function do NOT match, and in any case this function is quite useless.
To Top