Кароче нужно чтоб генерировалось тока цифры и буквы.. как переписать?
<?php
/* Функция генерации паролей повышенной сложности */
function passwdGen($minLength = 8, $maxLength = 12, $maxSymbols = 2)
{
$symbolCount = 0;
srand((double)microtime() * 1000003);
for ($i = 0; $i < mt_rand($minLength, $maxLength); $i++)
{
do
{
$char = mt_rand(33, 126);
$symbolCount += $isSymbol = (!in_array($char, range(48, 57)) && !in_array($char, range(65, 90)) && !in_array($char, range(97, 122)));
if ($symbolCount <= $maxSymbols || !$isSymbol)
{
break;
}
}
while (true);
$passwd = sprintf('%s%c', isset($passwd) ? $passwd : NULL, $char);
}
return $passwd;
}
/* пример */
echo htmlspecialchars(passwdGen()); // QzSУдалён
<?php
function passwdGen( $var ) {
return substr( str_shuffle( '1234567890aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ' ), 0, $var );
}
// Пример
echo passwdGen(6); // 6 - кол-во символов
?>