【问题标题】:PHP password validate number 12345 or abcde using regexPHP 密码验证数字 12345 或 abcde 使用正则表达式
【发布时间】:2015-09-20 22:12:52
【问题描述】:

对于我的规则,我想验证至少包含 5 个字符的密码字段,但这些字符不能是 abcde 或 12345 或反向。我怎样才能?这里我不想强制用户至少输入1个字母1个数字或者一个符号的组合。

【问题讨论】:

  • 向我们展示您的尝试
  • 为什么必须使用正则表达式?您可以检查 PHP 代码中的已知错误值。
  • 您是否已经尝试过?因为在我看来这很容易解决?无论如何,如果不是,请给我们一些关于您之前尝试的代码以及您不喜欢代码结果的原因。因此,我们更容易就您自己的代码向您提供反馈。
  • 这里我说的不是12345,而是123456789或者abcde,而是abcdefg这样的东西
  • 只需用最常用的密码制作一个字典,然后对照这个字典进行测试。 123 1234 12345 的现实组合并没有那么多可以测试。使用字典,您还可以测试 qwertpassword 等组合。

标签: php regex validation passwords rule


【解决方案1】:
$uppercase = preg_match('@[A-Z]@', $password);
$lowercase = preg_match('@[a-z]@', $password);
$number    = preg_match('@[0-9]@', $password);

if(!$uppercase || !$lowercase || !$number || strlen($password) < 8) {
  // tell the user something went wrong
}

文档:http://php.net/manual/de/function.preg-match.php

来源:Regex for password PHP

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-17
    相关资源
    最近更新 更多