Construire un mot de passe aléatoire
PasswordGenerator est une class static qui génère des mots de passe aléatoire. Les combinaisons sont assemblées de type suite de caractères ou alphanumérique. Le paramètre len fixe la longueur du mot de passe souhaité.<?php
/**
* Générer un mot de passe aléatoire
* Fobec 2010
*/
class PasswordGenerator {
const letters='aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWXxYyZz';
const numbers='0123456789';
static public function random($len, $usenumeric) {
if ($usenumeric==true) {
$stringlib=self::letters.self::numbers;
} else {
$stringlib=self::letters;
}
$plen = strlen($stringlib);
$password='';
for ($i = 1; $i <= $len; $i++) {
$password.= substr($stringlib, rand(0,$plen), 1);
}
return $password;
}
}
?>
Exemple de mot de passe aléatoire
Utilisons la class pour générer un mot de passe de taille fixe et composé d'un type de cartactère.<?php
/**
* Exemple d'utilisation
*/
echo 'mot de passe de 10 caracteres: '.PasswordGenerator::random(10, false);
echo '<br>';
echo 'mot de passe de 8 caracteres ou chiffres: '.PasswordGenerator::random(8, true);
?>
Mots de passe générées
mot de passe de 8 caracteres ou chiffres: r1d51DXd
Le principe de la class est de présenter une manière de générer des mots de passe. Tout est possible, la liste des
caractère peut etre étendue à des caractères spéciaux ou encore le résultat peut etre encodé en MD5.