rand
(PHP 4, PHP 5, PHP 7, PHP 8)
rand - Генерує випадкове число
Опис
rand(): int
rand(int $min, int $max): int
При дзвінку без параметрів min
иmax
, возвращает псевдослучайное целое в диапазоне от 0 доgetrandmax(). Наприклад, якщо вам потрібне випадкове число між 5 і 15 (включно), викличте rand(5, 15)
Застереження
Функція не створює криптографічно захищені значення та не повинна використовуватися для криптографічних цілей або цілей, що вимагають, щоб значення, що повертаються, були недоступні для розгадування.
Якщо потрібна криптографічно безпечна випадкова послідовність, можна використати клас Random\Randomizer з двигуном Random\Engine\Secure. Для простих сценаріїв є функції random_int() і random_bytes() із зручним API криптографічно безпечного генератора псевдовипадкових чисел (CSPRNG), що підтримується операційною системою.
Зауваження: На деяких платформах (таких як Windows) getrandmax() лише 32767. Щоб розширити діапазон, використовуйте параметри
min
иmax
, або зверніться до функції mt_rand()
Зауваження: Починаючи з PHP 7.1.0, rand() використовує той же алгоритм отримання випадкових чисел, що й mt_rand(). Для збереження зворотної сумісності, функція rand() дозволяє задавати параметр
max
меньше, чем параметрmin
Функцияmt_rand() у такій ситуації повертатимеfalse
Список параметрів
min
Найменше значення, яке можна повернути (за замовчуванням: 0)
max
Найбільше значення, яке можна повернути (за замовчуванням: getrandmax()) .
Значення, що повертаються
Псевдослучайное значение в диапазоне отmin
(или 0) доmax
(илиgetrandmax()
список змін
Версия | Опис |
---|---|
7.2.0 | Дляrand()здійснено виправлення бага усунення по модулю. Це означає, що послідовності згенеровані з конкретним початковим значенням можуть відрізнятися від згенерованих PHP 7.1 для 64-бітних машин. |
7.1.0 | rand() стала синонімом функціїmt_rand() |
Приклади
Приклад #1 Приклад використання rand()****
Loading...
Висновок наведеного прикладу буде схожим на:
7771
22264
11
Примітки
Увага
Диапазонmin
max
не повинен виходити за кордон getrandmax(). Тобто (max
min
) <= getrandmax(). В іншому випадку, rand() може повертати менш якісні довільні числа.
Дивіться також
- srand() - Задає початкове число генератора псевдовипадкових чисел
- getrandmax() - Повертає максимально можливе випадкове число
- mt_rand() - Генерує випадкове значення методом за допомогою генератора простих чисел на базі Вихря Мерсенна
- random_int() - Отримує криптографічно безпечне, рівномірно вибране ціле число
- random_bytes() - Отримує криптографічно безпечні випадкові байти