Есть динамическая переменная $password в которой храниться генерируемый пароль
допустим:
$password="BLKoAyZ9";
function testPassword() {
$test=null;
$test=//проверка $password на валидность
return $test // нужно чтобы возвращала true или false
};
Требования к паролю:
Миниму 6 букв
Минимум 2 цифры
Минимум 1 спецсимвол. т.е - (!@#$%^&&*_+)
можно ли реализовать проверку чтобы функция возвращала true или false?
Ответ
Имеем две строки для теста:
$password_1 = 's3xbl4y@t';
$password_2 = 'test$';
И следующую функцию:
function check_password ($pass)
{
if (strlen($pass) >= 9)
{
$number = preg_match_all('/[0-9]/', $pass);
$letter = preg_match_all('/[A-Za-z]/', $pass);
$symbol = preg_match_all('/[!@#$%^&*_+]/', $pass);
if ($letter >= 6 && $symbol >= 1 && $number >= 2)
{
return true;
}
else return false;
}
else return false;
}
Делаем дамп для проверки функции:
var_dump(check_password($password_1), check_password($password_2));
На выходе мы получаем:
bool(true)
bool(false)
Комментариев нет:
Отправить комментарий