如何在php中判断密码是否简单

如何在php中判断密码是否简单?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联专业为企业提供云州网站建设、云州做网站、云州网站设计、云州网站制作等企业网站建设、网页设计与制作、云州企业网站模板建站服务,10年云州做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

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中判断密码是否简单
URL地址:http://hbruida.cn/article/jposip.html