自动生成密码生成多达n个值并显示到新行PHP中

自动生成密码生成多达n个值并显示到新行PHP中,php,arrays,Php,Arrays,我有一个自动生成密码的代码,我想生成多达40倍的随机密码,并将其显示在新行中 $num = 0; while($num != 40){ $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789"; $pass = array(); //remember to declare $pass as an array $alphaLength = strlen($alphabet) - 1;

我有一个自动生成密码的代码,我想生成多达40倍的随机密码,并将其显示在新行中

$num = 0;
while($num != 40){
    $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";
    $pass = array(); //remember to declare $pass as an array
    $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
        for ($i = 0; $i < 8; $i++) {
        $n = rand(0, $alphaLength);
        $pass[] = $alphabet[$n];
        }
print_r ($pass);
echo implode("<br>",$pass);
$num++;
}
代码将每个字符串的数组分隔为新行。我需要显示8个字符的字符串,每行最多40次

不是回声内爆,$pass;,你在找echo内爆$pass

可以看出这是有效的


请注意,rand是,不应用于生成密码。对于这样的任务,我建议您查看一些。请记住,对于暴力强迫,长度远比复杂性重要,因此您可能还希望将长度从8增加到8。

rand不适合生成机密。我知道您只触及了生成输出的行,但是,一个小小的警告,即兰德公司在生成任何类型的密码时都是一个糟糕的选择,这将是很有帮助的。无论如何,PS:kia ora:-我已经添加了一个关于兰德公司弱点的简要说明,并与此代码似乎基于的问题相联系。关于更安全的密码生成,有很多答案——尽管密码复杂性肯定仅次于密码长度。起亚奥拉!:虽然这个代码片段可能是解决方案,但它确实有助于提高文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。
$num = 0;
while($num != 40){
    $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUWXYZ0123456789";
    $pass = array(); //remember to declare $pass as an array
    $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
        for ($i = 0; $i < 8; $i++) {
        $n = rand(0, $alphaLength);
        $pass[] = $alphabet[$n];
        }
    print_r ($pass);
    echo implode($pass) . "<br />";
    $num++;
}
function random_pass( $length = 8 ) {
    $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    $password = substr( str_shuffle( $chars ), 0, $length );
    return $password;
}
$num = 0;
while($num <= 40){
    $pass = random_pass();
    echo $pass. '<br>';
    $num++;
}