Ejemplo n.º 1
0
 /**
  * Public facing method to generate password(s)
  *
  * @return string password
  */
 public function generate($num = 1)
 {
     if (!is_int($num)) {
         throw new InvalidArgumentException(sprintf('generate expects parameter 1 of type int. %s given.', gettype($num)));
     }
     $passwords = array();
     $order = explode(":", $this->format);
     while (count($passwords) < $num) {
         $password = "";
         foreach ($order as $element) {
             switch ($element) {
                 case "word":
                     $password .= preg_replace('/(\\W)+.*/', "", $this->faker->streetName);
                     break;
                 case "num":
                     $password .= $this->faker->randomNumber(3);
                     break;
                 case "symbol":
                     $password .= $this->getSymbol();
                     break;
                 default:
                     $password = $password;
             }
         }
         $passwords[] = $password;
     }
     return count($passwords) > 1 ? $passwords : $passwords[0];
 }