array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.gmp-random-bits.php', 1 => 'gmp_random_bits', ), 'up' => array ( 0 => 'ref.gmp.php', 1 => 'GMP Функции', ), 'prev' => array ( 0 => 'function.gmp-prob-prime.php', 1 => 'gmp_prob_prime', ), 'next' => array ( 0 => 'function.gmp-random-range.php', 1 => 'gmp_random_range', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/gmp/functions/gmp-random-bits.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.6.3, PHP 7, PHP 8)
gmp_random_bits — Генерирует случайное число
Генерирует случайное число. Число будет находиться в диапазоне
между 0
и 2$bits - 1
.
Значение параметра bits
должно быть больше 0,
а максимальное значение ограничено размером доступной памяти.
Функция не создаёт криптографически безопасные значения и не должна использоваться в криптографических целях или целях, которые требуют, чтобы возвращаемые значения были недоступны для разгадывания.
Если нужна криптографически безопасная случайная последовательность, можно использовать класс Random\Randomizer с движком Random\Engine\Secure. Для простых сценариев существуют функции random_int() и random_bytes() с удобным API криптографически безопасного генератора псевдослучайных чисел (CSPRNG), поддерживаемого операционной системой.
bits
Количество битов для генерации.
Случайное GMP-число.
Если значение параметра bits
будет меньше 1
,
будет выброшено исключение ValueError.
Пример #1 Пример использования функции gmp_random_bits()
<?php
$rand1 = gmp_random_bits(3); // случайное число от 0 до 7
$rand2 = gmp_random_bits(5); // случайное число от 0 до 31
echo gmp_strval($rand1) . "\n";
echo gmp_strval($rand2) . "\n";
?>
Результат выполнения приведённого примера:
3 15