php实现随机生成易于记忆的密码
本文实例讲述了php实现随机生成易于记忆的密码。分享给大家供大家参考。具体实现方法如下:
这里通过预定义一些单词,让php随机从这些单词中选择进行组合生成密码
functionrandom_readable_pwd($length=10){
//thewordlistfromwhichthepasswordgetsgenerated
//(changethemasyoulike)
$words='dog,cat,sheep,sun,sky,red,ball,happy,ice,';
$words.='green,blue,music,movies,radio,green,turbo,';
$words.='mouse,computer,paper,water,fire,storm,chicken,';
$words.='boot,freedom,white,nice,player,small,eyes,';
$words.='path,kid,box,black,flower,ping,pong,smile,';
$words.='coffee,colors,rainbow,plus,king,tv,ring';
//Splitby",":
$words=explode(',',$words);
if(count($words)==0){die('Wordlistisempty!');}
//Addwordswhilepasswordissmallerthanthegivenlength
$pwd='';
while(strlen($pwd)<$length){
$r=mt_rand(0,count($words)-1);
$pwd.=$words[$r];
}
//appendanumberattheendiflength>2and
//reducethepasswordsizeto$length
$num=mt_rand(1,99);
if($length>2){
$pwd=substr($pwd,0,$length-strlen($num)).$num;
}else{
$pwd=substr($pwd,0,$length);
}
return$pwd;
}
//使用范例:
random_readable_pwd(10)=>returnssomethinglike:pingwater6,radiohap28,sunwhite84,happykid44,etc...
希望本文所述对大家的php程序设计有所帮助。