如何在php中判断密码是否简单?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
php 判断密码是否简单
原理:正则表达式
/((^[0-9]{6,})|(^[a-z]{6,})|(^[A-Z]{6,}))$/ 弱密码
/((^[0-9,a-z]{6,})|(^[0-9,A-Z]{6,})|(^[a-z,A-Z]{6,}))$/ 中密码
/^[\x21-\x7e,A-Za-z0-9]{6,}/ 强密码
代码如下
/**
* 检测密码强度
* @param string $pw 密码
* @return int
*/
function _checkPwLevel($pw){
if(empty($pw)){
return 0;
}
$pattern['weak'] = '/((^[0-9]{6,})|(^[a-z]{6,})|(^[A-Z]{6,}))$/';
$pattern['middle'] = '/((^[0-9,a-z]{6,})|(^[0-9,A-Z]{6,})|(^[a-z,A-Z]{6,}))$/';
$pattern['strong'] = '/^[\x21-\x7e,A-Za-z0-9]{6,}/';
$key ='';
foreach($pattern as $k=>$v){
$res = preg_match($v,$pw);
if($res){
$key = $k;
break;
}
}
switch ($key){
case 'weak':
return 3;
case 'middle':
return 2;
case 'strong':
return 1;
default:
return 0;
}
}
测试:
$r = _checkPwLevel('123465');
echo $r;
$r = _checkPwLevel('abc1345678');
echo $r;
$r = _checkPwLevel('123456...');
echo $r;
结果:
321
// 强 中 弱
关于如何在php中判断密码是否简单问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。