Есть функция генерирующая случайный пароль и добавляет его в массив.Так вот если в массиве уже есть такой пароль,то запустить функцию еще раз,и так пока не будет новый,отличный пароль,от тех,что в массиве.
Спасибо.
Спустя 3 минуты, 13 секунд (4.03.2012 - 10:52) Commander Keen написал(а):
а какова вероятность совпадений случайных паролей? o_O Мизерная, если не делать пароль в 3-4. А так, вижу только перебрать массив, что очень долго соответственно... Или исключать те символы, которые уже использовались и так до конца символьной таблицы )) Тогда пароль точно будет уникальный, но их будет не так много как ваших "псевдоуникальных"
Спустя 8 минут, 52 секунды (4.03.2012 - 11:01) Visman написал(а):
Какой перебор массива?
Если есть функция in_array.
Если есть функция in_array.
Спустя 2 минуты, 22 секунды (4.03.2012 - 11:03) Эли4ка написал(а):
Visman
сейчас посмотрю в мануале..
Commander Keen
длинна пароля - от8 до 32
сейчас посмотрю в мануале..
Commander Keen
длинна пароля - от8 до 32
Спустя 8 минут, 19 секунд (4.03.2012 - 11:11) Michael написал(а):
function getPass(){
static $passwords = array();
$new = rand(1,5000); // генерируем пароль
if (isset($passwords[$new])) return getPass();
else {
$passwords[$new] = 1;
return $new;
}
}
Спустя 27 минут, 28 секунд (4.03.2012 - 11:39) Эли4ка написал(а):
Michael
вот функция
Под нее адаптировать надо..
вот функция
<?php
function generatePassword($length = 8){
$chars = 'abdefhiknrstyzABDEFGHKNQRSTYZ23456789';
$numChars = strlen($chars);
$string = '';
for ($i = 0; $i < $length; $i++) {
$string .= substr($chars, rand(1, $numChars) - 1, 1);
}
return $string;
}
echo "Пароль из 8 символов: " . generatePassword(8) . "\n";
?>
Под нее адаптировать надо..
Спустя 12 минут, 58 секунд (4.03.2012 - 11:52) Visman написал(а):
$new = rand(1,5000); // генерируем пароль
замени на
$new = generatePassword(); // генерируем пароль
Тогда ф-я Michael будет использовать твою.
Спустя 10 минут, 1 секунда (4.03.2012 - 12:02) Эли4ка написал(а):
Visman
попробую..
попробую..