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相关知识,请访问PHP中文网!
Copyright © 2019- gamedaodao.com 版权所有 湘ICP备2022005869号-6
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务