【问题标题】:having trouble validating email addresses in php在 php 中验证电子邮件地址时遇到问题
【发布时间】:2011-01-26 04:22:16
【问题描述】:

我不知道我在哪里出错了。正在尝试验证电子邮件地址:

if (!preg_match("/^( [a-zA-Z0-9] )+( [a-zA-Z0-9\._-] )*@( [a-zA-Z0-9_-] )+( [a-zA-Z0-9\._-] +)+$/" , $emailREG)) {

【问题讨论】:

  • 我不会说正则表达式,所以我不能确定,但​​看起来你不允许使用 + 字符。如果你能,请做。当电子邮件验证器基本上不这样做时,这让我很恼火。
  • 您的第一个问题是尝试使用正则表达式验证电子邮件:stackoverflow.com/questions/36261/test-expand-my-email-regex/…

标签: php email-validation


【解决方案1】:

尝试改用FILTER_VALIDATE_EMAIL

<?php
    $email = "someone@exa mple.com";

    if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
      echo "E-mail is not valid";
    }else{
      echo "E-mail is valid";
    }
?> 

【讨论】:

    【解决方案2】:

    小心使用带有 FILTER_VALIDATE_EMAIL 的 filter_var。 "somebody@example" 将被验证为有效的电子邮件地址,因为它是有效的电子邮件地址,但可能并不理想。

    您也可以使用 validate PEAR 包。

    【讨论】:

      猜你喜欢
      • 2011-04-19
      • 2011-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-20
      • 2011-05-28
      相关资源
      最近更新 更多