Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<gmp_random_rangegmp_root>
^GMP FunctionsLast updated: Mon, 26 Oct 2026

gmp_random_seed

(PHP 7, PHP 8)

gmp_random_seed — Sets the RNG seed

Description

function gmp_random_seed(GMP|int|string $seed): void

Parameters

seed

The seed to be set for the gmp_random_bits() and gmp_random_range() functions.

A GMP object, an int, or a string that can be interpreted as a number following the same logic as if the string was used in gmp_init() with automatic base detection (i.e. when base is equal to 0).

Return Values

No value is returned.

Errors/Exceptions

Throws a ValueError if seed is invalid.

Changelog

Version Description
8.0.0 If seed is invalid, gmp_random_seed() now throws a ValueError. Previously it emitted an E_WARNING and returned false.

Examples

Example #1 gmp_random_seed() example

<?php
// set the seed
gmp_random_seed(100);

var_dump(gmp_strval(gmp_random_bits(10)));

// set the seed to something else
gmp_random_seed(gmp_init(-100));

var_dump(gmp_strval(gmp_random_range(0, 100)));

// set the seed to something invalid
try {
    gmp_random_seed('not a number');
} catch (\ValueError $e) {
    echo $e->getMessage(), PHP_EOL;
}

The above example will output:

string(3) "800"
string(2) "32"
gmp_random_seed(): Argument #1 ($seed) is not an integer string

See Also


<gmp_random_rangegmp_root>
^GMP FunctionsLast updated: Mon, 26 Oct 2026