Я знаю, это может показаться глупым, но я хочу создать случайный код из 8 символов, только числа или буквы, используя php. я это нужно, чтобы создать пароль для каждого пользователя, подписавшегося, благодарягенерирование случайного кода в php?
ответ
Я предпочел бы использовать md5 для генерации паролей
Но вы можете использовать что-то вроде этого, если вы хотите обычай:
function createRandomPassword() {
$chars = "abcdefghijkmnopqrstuvwxyz023456789";
srand((double)microtime()*1000000);
$i = 0;
$pass = '' ;
while ($i <= 7) {
$num = rand() % 33;
$tmp = substr($chars, $num, 1);
$pass = $pass . $tmp;
$i++;
}
return $pass;
}
Используйте base64_encode()
, отправьте ему несколько цифр rand()
и отрежьте первые 8 символов, которые определенно являются буквами или цифрами. Это не вполне случайная комбинация из-за того, что входные данные являются целыми числами. Но он достаточно хорош для пользовательских паролей по умолчанию. (Else использовать rand()
через chr()
перед кодированием.)
<?php
$uniqid = uniqid();
$rand_start = rand(1,5);
$rand_8_char = substr($uniqid,$rand_start,8);
?>
вы можете захотеть солить время, в противном случае хакер мог бы принять преимущество. это длинный выстрел, но все же возможно. – Patrick
Я думаю, что «длинный выстрел» - это преуменьшение. ;) – jondavidjohn
все еще, у всех хакеров есть, есть время :-) – Patrick
PHP имеет rand
функцию
Так что-то вроде этого (а также mt_rand
функции, которые утверждают, что документы быстрее.):
$i = 0;
$pwd = "";
while ($i < 10) {
if (mt_rand() % 2 == 0) {
$pwd .= rand();
} else {
$pwd .= char(rand());
// http://php.net/manual/en/function.chr.php
}
$i += 1;
}
, другой вариант заключается в том, чтобы использовать 'rand()' только один раз, установив допустимое число min & max, т. Е. '$ Pwd = rand (10000000, 99999999);' – Patrick
@Patrick - - хорошая мысль! Если скорость является проблемой, вы можете заменить внутренние случайные вызовы на конкатенацию строк или вызов char. –
Что о чем-то вроде этого, для удобства:
$pass = substr(md5(uniqid(mt_rand(), true)) , 0, 8);
приятный! Благодарю. – Hiram
Вы можете использовать это,
function rand_code($len)
{
$min_lenght= 0;
$max_lenght = 100;
$bigL = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$smallL = "abcdefghijklmnopqrstuvwxyz";
$number = "";
$bigB = str_shuffle($bigL);
$smallS = str_shuffle($smallL);
$numberS = str_shuffle($number);
$subA = substr($bigB,0,5);
$subB = substr($bigB,6,5);
$subC = substr($bigB,10,5);
$subD = substr($smallS,0,5);
$subE = substr($smallS,6,5);
$subF = substr($smallS,10,5);
$subG = substr($numberS,0,5);
$subH = substr($numberS,6,5);
$subI = substr($numberS,10,5);
$RandCode1 = str_shuffle($subA.$subD.$subB.$subF.$subC.$subE);
$RandCode2 = str_shuffle($RandCode1);
$RandCode = $RandCode1.$RandCode2;
if ($len>$min_lenght && $len<$max_lenght)
{
$CodeEX = substr($RandCode,0,$len);
}
else
{
$CodeEX = $RandCode;
}
return $CodeEX;
}
Подробности Random code generator in PHP
- 1. R Генерирование случайного гексагонального цвета
- 2. Быстрое развитие, генерирование случайного предложения
- 3. Генерирование случайного цвета не работает
- 4. Генерирование случайного числа 4-8 цифр
- 5. Пакетное генерирование случайного числа случайных чисел
- 6. Генерация случайного кода активации в PHP
- 7. Идиоматическое генерирование HTML в PHP
- 8. Генерирование градиентов из шестнадцатеричного кода или RGB в PHP/jQuery?
- 9. Генерирование кода сущностей Entity Framework
- 10. Django/JavaScript: генерирование кода HTML
- 11. Шесть цифр Уникальное генерирование кода
- 12. NodeJS - Генерирование недопустимого кода топа
- 13. Программирующее генерирование кода авторизации Box.com
- 14. Выборочное генерирование кода C# (SOAP)
- 15. Swift - Генерирование случайного числа, которое не находится в извлеченном списке
- 16. Генерирование случайного цвета с использованием функции python id()
- 17. генерирование случайных чисел в php
- 18. Генерирование кода триггера в шаблоне проекта VS
- 19. Условное генерирование кода в функции шаблона
- 20. генерирование случайного значения из массива fix, заданного как класс?
- 21. PHP, генерация кода случайного изображения, встроенная в CSS
- 22. Автоматическое генерирование кода для Strings.xml от Eclipse
- 23. PHP filter_var() Функция Генерирование предупреждения
- 24. Roslyn CTP - модификация случайного кода
- 25. Слайковое генерирование кода только для одной схемы
- 26. Генерирование кода Entity Framework с индексами
- 27. PHP - Генерирование токенов для транзакций
- 28. Быстрое генерирование штрих-кода, только сканирование штрих-кода один раз
- 29. Yii/Gii Генерирование кода кода для генератора добавляет метод
- 30. уникальное генерирование случайных чисел
Вы гугле "PHP случайный генератор паролей" - есть много хитов ... – atk