Генерация случайного пароля в PHP

Сниппет

Чтобы создать пароль с нужным набором символов, просто создайте строку алфавита ($alphabet) с конкретными символами a-z, A-Z, 0-9 (или все что вы хотите).

downloadcopy
<?php
function generatePassword($length = 8) {
    $alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    $count = mb_strlen($alphabet);
    for ($i = 0, $result = ''; $i < $length; $i++) {
        $index = mt_rand(0, $count - 1);
        $result .= mb_substr($alphabet, $index, 1);
    }
    return $result;
}

echo generatePassword(12);

Если вы используете PHP7, вы можете использовать random_int() вместо функции mt_rand:

downloadcopy
<?php
function generatePassword($length = 8) {
    $alphabet = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    $count = mb_strlen($alphabet);
    for ($i = 0, $result = ''; $i < $length; $i++) {
        $index = random_int(0, $count - 1);
        $result .= mb_substr($alphabet, $index, 1);
    }
    return $result;
}

echo generatePassword(12);

Если вам нужно сгенерировать надежный пароль, то вы можете воспользоваться нашим иструментом - генерация пароля онлайн.