Задача генерации случайной строки возникает часто в алгоритмах связанных с безопасностью.
Начиная с версии PHP 5.3, стала доступна функция
|
|
openssl_random_pseudo_bytes(int $length [, bool &$crypto_strong ]); |
которая позволяет генерировать цепочку псевдослучайных байтов произвольной длины.
Если вам требуется получить значение в виде строки а не binary, то можно воспользоваться преобразованием base64_encode() или bin2hex().
Например, получим строку из 20 случайных символов (из набора [0-9,a-f]):
|
|
$randomString = bin2hex(openssl_random_pseudo_bytes(10)); |
Код, как видите, занимает всего одну строку.
Данная запись опубликована в 21.11.2018 20:21 и размещена в рубрике PHP.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Декабрь 12, 2013 г.
Из разряда "на заметку программисту". Есть такие вещи, о которых знаешь что они есть, но забываешь конкретную реализацию, когда доходит до использования. Именно так обстоит дело с тем, что описано в заголовке. Т.е. у нас есть переменная, где хранится ...
Читать
Январь 14, 2016 г.
Для начала разберемся что такое GMT и UTC. Во многих источниках они упоминаются как синонимы, и между ними действительно не существенная разница (до 1 секунды).
Их отличие в методике получения точного значения. UTC (универсальное координированное ...
Читать
Январь 29, 2021 г.
Эта статья о некоторых задачах, возникающих при сохранении файла на сервере, при получении его от пользователя через форму (<input type="file" />).
Определимся с требованиями. Технически, решение нужно в виде функции, которая принимает набор ...
Читать
Май 27, 2025 г.
Если коротко - нельзя.
Вызвать какой метод трейта напрямую без подключения его к классу невозможно, т.к. трейты в PHP не являются самостоятельными сущностями, как классы или объекты.
Трейт — это механизм "вклейки" кода в класс. Он не компилируется ...
Читать