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 判斷密碼是否簡單的詳細內容。更多資訊請關注PHP中文網其他相關文章!