От автора: генерация числа PHP 7 (имеются в виду криптографически безопасные целые числа) и строк в кросс-платформенном виде осуществляется с помощью двух новых функций: random_bytes() и random_int().
random_bytes() — генерирует криптографически безопасные псевдослучайные байты.
random_int() — генерирует криптографически безопасные псевдослучайные целые числа.
random_bytes()
random_bytes() генерирует строку произвольной длины криптографических случайных байтов, которые подходят для использования в криптографии, например, при генерации Salt (cекретных ключе), ключей или векторов инициализации.
Синтаксис
1 |
string random_bytes ( int $length ) |
Параметры
length — длина в байтах случайной строки, которая должна быть возвращена.
Возвращаемые значения
Возвращает строку, содержащую запрошенное количество криптографически безопасных случайных байтов.
Ошибки / Исключения
Если подходящий источник для генерации случайных данных не найден, будет выбрано Исключение.
Если указаны недопустимые параметры, будет введено TypeError.
Если указана недопустимая длина байтов, будет выведено сообщение об ошибке.
Пример
1 2 3 4 |
<?php $bytes = random_bytes(5); print(bin2hex($bytes)); ?> |
Этот код выводит в браузере следующее: 54cc305593
random_int()
random_int() генерирует криптографические случайные целые числа, которые подходят для использования, когда объективность результатов является критически важной.
Синтаксис
1 |
int random_int ( int $min , int $max ) |
Параметры
min — минимальное значение, которое может быть возвращено, оно должно быть больше или равно PHP_INT_MIN.
max — максимальное значение, которое может быть возвращено, оно должно быть меньше или равно PHP_INT_MAX.
Возвращаемые значения
Возвращает криптографически безопасное случайное целое число в диапазоне от min до max, включительно.
Ошибки / Исключения
Если подходящий источник генерации случайных данных не может быть найден, будет введено Исключение.
Если указаны недопустимые параметры, будет введено TypeError.
Если max меньше min, будет введено Error.
Пример
1 2 3 4 5 |
<?php print(random_int(100, 999)); print(""); print(random_int(-1000, 0)); ?> |
Этот код выводит в браузере следующее:
1 2 |
614 -882 |
Источник: //www.tutorialspoint.com/
Редакция: Команда webformyself.