PHP生成随机密码脚本

本文分享一个可以生成随机密码的PHP函数,我们可以指定密码的长度和复杂程度。代码如下:

function generatePassword($length=9, $strength=0) {
	$vowels = 'aeuy';
	$consonants = 'bdghjmnpqrstvz';
	if ($strength >= 1) {
		$consonants .= 'BDGHJLMNPQRSTVWXZ';
	}
	if ($strength >= 2) {
		$vowels .= "AEUY";
	}
	if ($strength >= 4) {
		$consonants .= '23456789';
	}
	if ($strength >= 8 ) {
		$vowels .= '@#$%';
	}

	$password = '';
	$alt = time() % 2;
	for ($i = 0; $i < $length; $i++) {
		if ($alt == 1) {
			$password .= $consonants[(rand() % strlen($consonants))];
			$alt = 0;
		} else {
			$password .= $vowels[(rand() % strlen($vowels))];
			$alt = 1;
		}
	}
	return $password;
}


使用demo(生成长度为9,复杂程度为5的随机密码)
echo generatePassword(9, 5);

posted on 2012-04-05 17:15  IT技术畅销书  阅读(220)  评论(0编辑  收藏  举报

导航