随机密码php,PHP会生成随机密码

我已经把这个使用了单词列表的小脚本放在一起来生成一个可读的密码。

代码的第一部分通过生成单词和数字而正常工作。问题在于最后的符号似乎每隔一段时间都会有效。

function random_readable_pwd($length=10){

// the wordlist from which the password gets generated

// (change them as you like)

$words = 'AbbyMallard,AbigailGabble,AbisMal,Abu,Adella,TheAgent,AgentWendyPleakley,Akela,AltheAlligator,Aladar,Aladdin,AlamedaSlim,AlanaDale,Alana,Alcmene,Alice,AmeliaGabble,AmosSlade,Amphitryon,AnastasiaTremaine,Anda,Andrina,Angelique,AngusMacBadger';

// Split by ",":

$words = explode(',', $words);

if (count($words) == 0){ die('Wordlist is empty!'); }

// Add words while password is smaller than the given length

$pwd = '';

while (strlen($pwd) < $length){

$r = mt_rand(0, count($words)-1);

$pwd .= $words[$r];

}

$num = mt_rand(1, 99);

if ($length > 2){

$pwd = substr($pwd,0,$length-strlen($num)).$num;

} else {

$pwd = substr($pwd, 0, $length);

}

$pass_length = strlen($pwd);

$random_position = rand(0,$pass_length);

$syms = "!@#$%^&*()-+?";

$int = rand(0,51);

$rand_char = $syms[$int];

$pwd = substr_replace($pwd, $rand_char, $random_position, 0);

return $pwd;

}

?>

Password generator

Password generator

echo random_readable_pwd(10);

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值