パスワード生成
ポリシーにあわせてランダムなパスワードを生成する
function createPassword($length = 8){
$pwd_strings = array("sletter" => range('a', 'z'),
"cletter" => range('A', 'Z'),
"number" => range('0', '9'),
"symbol" => array_merge(range('!', '/'), range(':', '?'), range('{', '~')));
$pwd = array();
while (count($pwd) < $length) {
// 4種類必ず入れる
if (count($pwd) < 4) {
$key = key($pwd_strings);
next($pwd_strings);
} else {
// 後はランダムに取得
$key = array_rand($pwd_strings);
}
$pwd[] = $pwd_strings[$key][array_rand($pwd_strings[$key])];
}
// 生成したパスワードの順番をランダムに並び替え
shuffle($pwd);
return implode($pwd);
}