以下代码可以生成指定长度的用户密码,还可以设定密码强度,包括小写字母密码、大小写字母密码、大小写字母与数字密码、大小写字母与数字 特殊符号等组成的密码。
代码:
<?php
/**
* 函数:generateRandpassword
* 参数:$size 密码长度 $power密码强度
* 功能:生成密码的函数
* 编辑:www.jb200.com
*/
function generateRandpassword($size=9, $power=0) {
$vowels = 'aeuy';
$randconstant = 'bdghjmnpqrstvz';
if ($power & 1) {
$randconstant .= 'BDGHJLMNPQRSTVWXZ';
}
if ($power & 2) {
$vowels .= "AEUY";
}
if ($power & 4) {
$randconstant .= '23456789';
}
if ($power & 8) {
$randconstant .= '@#$%';
}
$Randpassword = '';
$alt = time() % 2;
for ($i = 0; $i < $size; $i++) {
if ($alt == 1) {
$Randpassword .= $randconstant[(rand() % strlen($randconstant))];
$alt = 0;
} else {
$Randpassword .= $vowels[(rand() % strlen($vowels))];
$alt = 1;
}
}
return $Randpassword;
}
?>