在验证php中的电子邮件地址时遇到问题
问题描述:
我无法弄清楚我要在哪里出错。试图验证电子邮件地址:在验证php中的电子邮件地址时遇到问题
if (!preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-] +)+$/" , $emailREG)) {
答
尝试使用FILTER_VALIDATE_EMAIL代替:
<?php
$email = "[email protected] mple.com";
if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
echo "E-mail is not valid";
}else{
echo "E-mail is valid";
}
?>
答
小心与FILTER_VALIDATE_EMAIL filter_var。 “somebody @ example”将被验证为有效的电子邮件地址,因为它是一个有效的电子邮件地址,但可能不合意。
您也可以使用验证PEAR包。
我不会说正则表达式,所以我不能确定,但看起来你不允许使用'+'字符。如果你能够,请做。当电子邮件验证程序基本上没有时,它让我很不高兴。 – 2010-03-11 00:57:56
你的第一个问题是试图用正则表达式验证电子邮件:http://stackoverflow.com/questions/36261/test-expand-my-email-regex/36277#36277 – 2010-03-11 00:58:47