International PHP Conference Berlin 2025

gmp_random

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

gmp_randomRandom number

Warnung

Diese Funktion ist seit PHP 7.2.0 als DEPRECATED (veraltet) markiert und wurde in PHP 8.0.0 ENTFERNT. Von der Verwendung dieser Funktion wird dringend abgeraten.

Beschreibung

gmp_random(int $limiter = 20): GMP

Generate a random number. The number will be between 0 and (2 ** n) - 1, where n is the number of bits per limb multiplied by limiter. If limiter is negative, negative numbers are generated.

A limb is an internal GMP mechanism. The number of bits in a limb is not static, and can vary from system to system. Generally, the number of bits in a limb is either 32 or 64, but this is not guaranteed.

Achtung

Diese Funktion erzeugt keine kryptografisch sicheren Werte und darf nicht für kryptografische Zwecke verwendet werden oder für Zwecke, bei denen die zurückgegebenen Werte nicht abschätzbar sein dürfen.

Falls kryptographisch sichere Zufallszahlen benötigt werden, kann der Random\Randomizer mit der Random\Engine\Secure-Engine verwendet werden. Für einfache Anwendungsfälle bieten die Funktionen random_int() und random_bytes() eine bequeme und sichere API, die den CSPRNG des Betriebssystems verwendet.

Parameter-Liste

limiter

The limiter.

Ein GMP-Object, ein Integer oder eine Zeichenkette, die als Zahl interpretiert werden kann, wobei die gleiche Logik gilt, als ob die Zeichenkette in gmp_init() mit automatischer Erkennung der Basis verwendet würde (d. h. wenn base gleich 0 ist).

Rückgabewerte

A random GMP number.

Beispiele

Beispiel #1 gmp_random() example

<?php
$rand1
= gmp_random(1); // random number from 0 to 1 * bits per limb
$rand2 = gmp_random(2); // random number from 0 to 2 * bits per limb

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

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

1915834968
8642564075890328087

add a note

User Contributed Notes 1 note

up
1
asphp at dsgml dot com
8 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