Поиграть


Фотографии знаменитостей, Герои нашего времени

Генерация пароля на php

Code (php)
  1.  
  2. /**
  3. * Generates slightly more human-understandable random passwords
  4. *
  5. * @param int $len
  6. * @return string
  7. */
  8. function makePassword($len = 8)
  9. {
  10.         $vowels = array(‘a’, ‘e’, ‘i’, ‘o’, ‘u’, ‘y’);
  11.         $confusing = array(‘I’, ‘l’, ‘1′, ‘O’, ‘0′,‘o’);
  12.         $replacements = array(‘A’, ‘k’, ‘3′, ‘U’, ‘9′,‘e’);
  13.         $choices = array(0 => rand(0, 1), 1 => rand(0, 1), 2 => rand(0, 2));
  14.         $parts = array(0 => , 1 => , 2 => );
  15.  
  16.         if ($choices[0]) $parts[0] = rand(1, rand(9,99));
  17.         if ($choices[1]) $parts[2] = rand(1, rand(9,99));
  18.  
  19.         $len -= (strlen($parts[0]) + strlen($parts[2]));
  20.         for ($i = 0; $i < $len; $i++)
  21.         {
  22.                 if ($i % 2 == 0) $parts[1] .= chr(rand(97, 122));
  23.                 else $parts[1] .= $vowels[array_rand($vowels)];
  24.         }
  25.         if ($choices[2]) $parts[1] = ucfirst($parts[1]);
  26.         if ($choices[2] == 2) $parts[1] = strrev($parts[1]);
  27.  
  28.         $r = $parts[0] . $parts[1] . $parts[2];
  29.         $r = str_replace($confusing, $replacements, $r);
  30.         return $r;
  31. }
  32.  

+1+2+3+4+5 (Ещё не голосовали)
Загрузка... Загрузка...

Оставьте комментарий

Блог разработчика / бусы из необработанного янтаря
скидки, оптические прицелы nikon специально для Вас
аквариумы морские каталог аквариум
ПО для архитекторов: license 3ds max design 2011 в кратчайшие сроки