【发布时间】:2012-11-08 19:07:02
【问题描述】:
我正在回顾一个项目并整理一些验证位,通常我会使用正则表达式检查来验证电子邮件是否正确,然后我遇到了:http://de2.php.net/manual/en/function.filter-var.php
现在我已经尝试了几个测试,但没有得到预期的结果。
$email_b = 'bog^us@gmail.com';
var_dump(filter_var($email_b, FILTER_SANITIZE_EMAIL));
返回:
string(16) "bog^us@gmail.com"
但对我来说,这没有经过消毒,然后当我尝试时
if (filter_var($email_b, FILTER_VALIDATE_EMAIL)) {
echo "This (email_b) email address is considered valid.";
}
我要再说一遍,这不是一个有效的电子邮件地址。
我错过了什么吗?
【问题讨论】:
-
不是你,但根据 RFC,这些字符是有效的。
-
你在使用哪个版本的 PHP?
-
"^" 是电子邮件地址的有效字符(请参阅 en.wikipedia.org/wiki/Email_address#Valid_email_addresses 或相应的 RFC)
-
好吧,我不知道所有这些都是有效的电子邮件地址 :) doh。谢谢大家,猜猜这是 RTFM 的情况。
标签: php validation