(PHP 4, PHP 5, PHP 7)
mt_rand — Генерирует случайное значение методом mt
$min
, int $max
)Многие генераторы случайных чисел в старых библиотеках имеют сомнительные или неизвестные характеристики, а также работают довольно медленно. По умолчанию, PHP использует генератор случайных чисел libc с помощью функции rand(). Функция mt_rand() представляет собой удобную замену этой функции. Она использует генератор случайных чисел с известными характеристиками, основанный на "» Вихре Мерсенна", который генерирует случайные числа в среднем в четыре раза быстрее, чем libc rand().
Вызванная без необязательных параметров min и
max, функция mt_rand()
возвращает псевдослучайное значение между 0 и mt_getrandmax().
Если вам нужно, например, случайное число между 5 и 15 (включительно),
используйте вызов mt_rand(5,15)
Данная функция не генерирует криптографически безопасные значения и не должна использоваться в криптографических целях. Если вам требуется криптографически безопасное значение, подумайте об использовании функций random_int(), random_bytes(), или openssl_random_pseudo_bytes() вместо данной.
minНеобязательный параметр: минимальное значение случайного числа (по умолчанию: 0)
maxНеобязательный параметр: максимальное значение случайного числа (по умолчанию: mt_getrandmax())
Случайное целое значение между min (или 0)
и max (или mt_getrandmax(), включительно),
или FALSE в случае, если max меньше min.
| Версия | Описание |
|---|---|
| 5.3.4 |
Приводит к ошибке E_WARNING и возвращает FALSE, если
max < min.
|
Пример #1 Пример использования mt_rand()
<?php
echo mt_rand() . "\n";
echo mt_rand() . "\n";
echo mt_rand(5, 15);
?>
Результатом выполнения данного примера будет что-то подобное:
1604716014 1478613278 6
Диапазон min - max не должен
выходить за границы mt_getrandmax(). То есть
(max -
min) <= mt_getrandmax().
В противном случае, mt_rand() может возвращать
менее качественные случайные числа.