有時候我們需要在應用程序中使用隨機生成用戶名和密碼,這樣可以大大提高應用程序的安全,在PHP中生成隨機用戶名和密碼可以使用 mt_rand 函數或者是 rand 函數, rand 函數在驗證碼中的應用多一些,而生成長字符的隨機碼一般都需要 mt_rand 函數。
使用PHP生成隨機數可以應用在許多地方,比如可以設計程序的隨機密碼、模擬擲骰子游戲的應用程序、石頭剪子布游戲應用程序等等。
下面是PHP生成隨機數的兩個函數方法:
復制代碼 代碼如下:
//自動為用戶隨機生成用戶名(長度6-13)
function create_password($pw_length = 4){
$randpwd = '';
for ($i = 0; $i < $pw_length; $i++){
$randpwd .= chr(mt_rand(33, 126));
}
return $randpwd;
}
function generate_username( $length = 6 ) {
// 密碼字符集,可任意添加你需要的字符
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}<>~`+=,.;:/?|';
$password = '';
for ( $i = 0; $i < $length; $i++ )
{
// 這裡提供兩種字符獲取方式
// 第一種是使用substr 截取$chars中的任意一位字符;
// 第二種是取字符數組$chars 的任意元素
// $password .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
$password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
}
return $password;
}
// 調用該函數
$userId = 'user'.generate_username(6);
$pwd = create_password(9);