功能:判断密码强度
结果形式:
打分(满分为10)
代码:
???????????$score = 0;
???????????if(preg_match("/[0-9]+/",$str))
???????????{
??????????????$score ++;?
???????????}
???????????if(preg_match("/[0-9]{3,}/",$str))
???????????{
??????????????$score ++;?
???????????}
???????????if(preg_match("/[a-z]+/",$str))
???????????{
??????????????$score ++;?
???????????}
???????????if(preg_match("/[a-z]{3,}/",$str))
???????????{
??????????????$score ++;?
???????????}
???????????if(preg_match("/[A-Z]+/",$str))
???????????{
??????????????$score ++;?
???????????}
???????????if(preg_match("/[A-Z]{3,}/",$str))
???????????{
??????????????$score ++;?
???????????}
???????????if(preg_match("/[_|\-|+|=|*|!|@|#|$|%|^|&|(|)]+/",$str))
???????????{
??????????????$score += 2;?
???????????}
???????????if(preg_match("/[_|\-|+|=|*|!|@|#|$|%|^|&|(|)]{3,}/",$str))
???????????{
??????????????$score ++ ;?
???????????}
???????????if(strlen($str) >= 10)
???????????{
??????????????$score ++;?
???????????}
???????????echo "<br>";
???????????echo $score;
?
JS实现密码强度验证:
<script type="text/javascript"> var $ = function(v){return document.getElementById(v);} function isSecurity(v){ if (v.length < 3) { iss.reset();return;} var lv = -1; if (v.match(/[a-z]/ig)){lv++;} if (v.match(/[0-9]/ig)){lv++;} if (v.match(/(.[^a-z0-9])/ig)){lv++;} if (v.length < 6 && lv > 0){lv--;} iss.reset(); switch(lv) { case 0: iss.level0(); break; case 1: iss.level1(); break; case 2: iss.level2(); break; default: iss.reset(); } } var iss = { color:["CC0000","FFCC33","66CC00","CCCCCC"], text:["弱","中","强"], width:["50","100","150","10"], reset:function(){ $("B").style.backgroundColor = iss.color[3]; $("B").style.width = iss.width[3]; $("A").innerHTML = "验证试中"; }, level0:function(){ $("B").style.backgroundColor = iss.color[0]; $("B").style.width = iss.width[0]; $("A").innerHTML = "较弱"; }, level1:function(){ $("B").style.backgroundColor = iss.color[1]; $("B").style.width = iss.width[1]; $("A").innerHTML = "中"; }, level2:function(){ $("B").style.backgroundColor = iss.color[2]; $("B").style.width = iss.width[2]; $("A").innerHTML = "高强"; } } </script> <input type="password" name="password" size="25" maxlength="20" onkeyup="isSecurity(this.value);"> <font class="red" id="A">密码强度</font> <table height="8" border="1" align="left" cellpadding="0" cellspacing="0" bordercolor="#EEEEEE" style="border-collapse:collapse;"> <tr> <td bgcolor="#EEEEEE" width="1" align="center" valign="middle" id="B"></td> </tr> </table>?