在PHP中生成随机密码

Generate a random password in PHP

本问题已经有最佳答案,请猛点这里访问。

我想用PHP生成一个随机密码,稍后将其发送给注册用户。我怎样才能做到最好?我已经尝试过使用rand函数,但是我没有使它工作。最好是有一个函数为我这样做的可能性,所以我只需要调用

1
$pw = generatePW();

谢谢你的帮助。


您可以通过以下功能轻松实现这一点:

1
2
3
4
5
6
7
8
9
10
function random_string($length)
{
   $string ="";
   $chars ="abcdefghijklmanopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
   $size = strlen($chars);
   for ($i = 0; $i < $length; $i++) {
       $string .= $chars[rand(0, $size - 1)];
   }
   return $string;
}

在这里,您首先生成一个空字符串,然后定义一个包含您想要的所有字符的字符串,您还可以添加#?或您想要的任何字符。在计算完字符数后,可以开始填充新字符串。您只需使用for循环来完成此操作。每次调用loopcontent时,都会有一个随机字符(从您的$char中)添加到空字符串中。

只需键入以下内容,即可使用此函数(例如,如果要将随机密码存储在变量中):

1
$password = rand_string(15) //the number specified in brackets is the amount of characters in your password

如果您遇到任何问题,请通知我。