rand

Нужен случайный код, токен или число? rand по умолчанию использует криптографически стойкий генератор PHP. rand 1 100 выдаст одно число в диапазоне, а rand -n 5 1 10 — пять независимых чисел. Значения могут повторяться.

БезопасностьВерсия 1.1.2Стабильная
lil-terminal

Обзор

-b создаёт случайные байты в HEX, -s — буквенно-цифровую строку, -uuid — UUID версии 4. UUID подходит для идентификаторов, но не предназначен быть секретом. В примерах показаны образцы вывода: при каждом обычном запуске значения меняются.

Случайное значение не всегда является секретом

Числа, байты и строки в обычном режиме используют криптографический источник случайности. UUID служит идентификатором, а не секретом; MT при заданном seed воспроизводим, поэтому его нельзя использовать для паролей, токенов доступа и криптографических ключей.

Синтаксис

lil-terminal
rand [min [max]]

Справочник

rand

создать криптографическое целое от 0 до PHP_INT_MAX

rand <max>

создать криптографическое целое от 0 до max

rand <min> <max>

создать криптографическое целое в выбранном диапазоне

rand -n <count> [min] [max]

создать несколько целых чисел

rand -b <bytes>

создать криптографические случайные байты в шестнадцатеричном виде

rand -s <length>

создать криптографическую буквенно-цифровую строку

rand -uuid

создать UUID версии 4 по RFC 4122

rand -mt [min] [max]

создать быстрое некриптографическое целое

rand -mt -seed <integer>

задать seed генератора MT перед созданием

rand -max

показать пределы генераторов целых чисел

Примечания

Minimum выдаёт одно число с одной или двумя границами; для -n, -s, -b, UUID и MT нужен Base.

Интерактивный пример из `/sandbox/`

Запускайте подготовленные примеры прямо на странице. Результат заранее сформирован и показывается в браузере; команды терминала на сервере не выполняются.

Создать криптографическое целое от 0 до PHP_INT_MAX

Установка и управление

Устанавливайте актуальную совместимую версию. Для полного набора возможностей выбирайте Base, для сокращённого — Minimum; уже установленный модуль обновляет команда upgrade.

Base и Minimum — два пакета одного текущего релиза модуля, а не разные версии команды.

Пакет Base

Установить полный пакет с локальной справкой и всеми опубликованными режимами.

install rand
Пакет Minimum

Установить сокращённый пакет без локальной справки; help <cmd> -i открывает актуальную серверную справку.

install rand -m
Точная публичная версия

Установить именно эту опубликованную версию.

install rand -v 1.1.2
Проверить или обновить

Поручить upgrade проверить совместимость и заменить установленный блок только при необходимости.

upgrade rand
Удалить модуль

Удалить блок расширения, не затрагивая ядро и остальные модули.

install rand -u

Примеры

Примеры можно копировать, но сайт их не выполняет. Перед запуском на реальном проекте проверьте пути, права и разрушающие флаги.

Создать криптографическое целое от 0 до PHP_INT_MAX
rand
Пример вывода (при новом запуске значение изменится):
6717973524709714206
Создать криптографическое целое от 0 до max
rand 100
Пример вывода (при новом запуске значение изменится):
75
Создать криптографическое целое в выбранном диапазоне
rand 10 20
Пример вывода (при новом запуске значение изменится):
13
Создать криптографическое целое в выбранном диапазоне
rand -5 5
Пример вывода (при новом запуске значение изменится):
5
Создать несколько целых чисел
rand -n 5 1 10
Пример вывода (при новом запуске значение изменится):
7
3
10
6
4
Создать несколько целых чисел
rand -n 3
Пример вывода (при новом запуске значение изменится):
191285834354115477
5305755011603380746
6738832702881509879
Создать криптографические случайные байты в шестнадцатеричном виде
rand -b 16
Пример вывода (при новом запуске значение изменится):
439cce918df83a95d1d5ef3787e88e77
Создать криптографические случайные байты в шестнадцатеричном виде
rand -b 32
Пример вывода (при новом запуске значение изменится):
2e31f17f5df14c264cf41cba1aa730a0405983ce0580f615302717c97d37acf4
Создать криптографическую буквенно-цифровую строку
rand -s 24
Пример вывода (при новом запуске значение изменится):
RH0xmptLqFbZZ9cuyoxR07LN
Создать криптографическую буквенно-цифровую строку
rand -s 32
Пример вывода (при новом запуске значение изменится):
pOyNEXu0WtVBRIyDBce329qQRBHj7RtC
Создать UUID версии 4 по RFC 4122
rand -uuid
Пример вывода (при новом запуске значение изменится):
6c8adb39-adb7-482a-aa3f-1e49570cff33
Создать быстрое некриптографическое целое
rand -mt 1 100
Пример вывода (при новом запуске значение изменится):
53
Задать seed генератора MT перед созданием
rand -mt -seed 42 1 100
Пример вывода (при новом запуске значение изменится):
43
Задать seed генератора MT перед созданием
rand -mt -seed 42 -n 3 1 10
Пример вывода (при новом запуске значение изменится):
3
8
7
Показать пределы генераторов целых чисел
rand -max
secure:	9223372036854775807
mt:	2147483647
Создать криптографическое целое в выбранном диапазоне
rand 10 1
Minimum exceeds maximum
Создать несколько целых чисел
rand -n 0
Count must be between 1 and 10000
Создать криптографические случайные байты в шестнадцатеричном виде
rand -b 5000
Byte count must be between 1 and 4096
Создать криптографическую буквенно-цифровую строку
rand -s 0
String length must be between 1 and 4096
Задать seed генератора MT перед созданием
rand -seed 42
-seed requires -mt
Создать криптографические случайные байты в шестнадцатеричном виде
rand -b 16 -uuid
Choose one output mode
Создать криптографическое целое в выбранном диапазоне
rand 1 2 3
Too many arguments
Создать криптографическое целое от 0 до PHP_INT_MAX
rand -mystery
Unknown option: -mystery.

Связанная документация

Текущая публичная версия

v1.1.22026-08-11

Первая стабильная версия

Актуальная стабильная версия rand. Нужен случайный код, токен или число?