7 ответов:
новая PHP7 есть, наконец, поддержка a криптографически безопасные псевдослучайные целые числа.
int random_int ( int $min , int $max )random_int-генерирует криптографически защищенные псевдослучайные целые числа
что в основном делает предыдущие ответы устаревшими.
A
быстреебыстрая версия будет использовать mt_rand:$min=1; $max=20; echo mt_rand($min,$max);Источник:http://www.php.net/manual/en/function.mt-rand.php.
Примечание: для этого на вашем сервере должен быть включен модуль Math PHP. Если это не так, ошибка вашего хоста, чтобы включить его, или вы должны использовать нормальный (и медленнее) слчис().
rand(1,20)документы для функции RAND PHP находятся здесь:
http://php.net/manual/en/function.rand.php
использовать
srand()функция для установки начального значения генератора случайных чисел.
я связал ответы здесь и сделал его независимой от версии;
function generateRandom($min = 1, $max = 20) { if (function_exists('random_int')): return random_int($min, $max); // more secure elseif (function_exists('mt_rand')): return mt_rand($min, $max); // faster endif; return rand($min, $max); // old }
попробуйте этот. Он будет генерировать идентификатор в соответствии с вашим желанием.
function id() { // add limit $id_length = 20; // add any character / digit $alfa = "abcdefghijklmnopqrstuvwxyz1234567890"; $token = ""; for($i = 1; $i < $id_length; $i ++) { // generate randomly within given character/digits @$token .= $alfa[rand(1, strlen($alfa))]; } return $token; }
Comments