首頁 > 後端開發 > PHP問題 > php 判斷密碼是否簡單

php 判斷密碼是否簡單

angryTom
發布: 2023-02-27 08:06:02
原創
4238 人瀏覽過

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相關知識,請造訪

PHP中文網

以上是php 判斷密碼是否簡單的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板