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.
(PHP 4 >= 4.0.4, PHP 5, PHP 7)
gmp_random — Nombre GMP aléatoire
Cette fonctionnalité est OBSOLÈTE à partir de PHP 7.2.0 et a été SUPPRIMÉE à partir de PHP 8.0.0.
Génère un nombre aléatoire. Ce nombre sera compris entre zéro et (2 ** n) -1,
où n est le nombre de bits par limb multiplié par limiter
.
Si limiter
est négatif, un nombre négatif est généré.
Un limb est un mécanisme interne de GMP. Le nombre de bits dans un limb n'est pas statique, et peut varier entre les systèmes. En général, le nombre de bits par limb est 32 ou 64, mais ce n'est pas garantit.
Cette fonction ne génère pas de valeurs cryptographiquement sûres, et ne doit pas être utilisée à des fins cryptographiques, ou à des fins qui exigent que les valeurs renvoyées soient indéchiffrables.
Si de l'aléatoire cryptographiquement sûre est requis, le Random\Randomizer peut être utilisé avec le moteur Random\Engine\Secure. Pour des cas d'usage simple, les fonctions random_int() et random_bytes() fournissent une API pratique et sûre qui est qui est soutenu par le CSPRNG du système d'exploitation.
limiter
Le limiteur.
Un objet GMP, un entier,
ou un chaîne de caractères qui peut être interprété comme un nombre suivant la même logique
que si la chaîne était utilisée dans gmp_init() avec détection automatique de la base (c'est-à-dire lorsque base
est égal à 0).
Un nombre GMP aléatoire.
Exemple #1 Exemple avec gmp_random()
<?php
$rand1 = gmp_random(1); // nombre aléatoire de 0 à 1 * bits par limb
$rand2 = gmp_random(2); // nombre aléatoire de 0 à 2 * bits par limb
echo gmp_strval($rand1) . "\n";
echo gmp_strval($rand2) . "\n";
?>
L'exemple ci-dessus va afficher :
1915834968 8642564075890328087
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.