在PHP中生成混合大小写随机密码


Generate mixed-case random password in PHP

以下是随机密码列表:

xFn2zhgH
NqnzZtJQ
3Lh4nBkf
N8zyq4TF
wRzZTxDV
yJhL6CFH
3KdgtRX4
ypgGXdY2
Y9zN7cn2
zcy8LKNp

我需要有某种功能,可以创建一个类似于这些现有密码格式的密码。关于如何做到这一点,有什么建议吗?

谢谢。

使用当前日期/时间的哈希

$hash = md5(date('l jS 'of F Y h:i:s A'));

然后将其截断为所需的字符数。

function create_password ($len)
{
  $pool = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  $str = '';
  for ($i=0; $i < $len; $i++)
  {
    $str .= substr($pool, mt_rand(0, strlen($pool) -1), 1);
  }
  return $str;

}

如果您在PHP中需要它,这里有一个生成随机密码的简单代码:

function randomPassword($length = 8) {
    $password = '';
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $limit = strlen($characters) - 1;
    for ($i = 0; $i < $length; $i++) {
        $password .= $characters[rand(0, $limit)];
    }
    return $password;
}