简单
$email = '[email protected]';
$validation = filter_var($email, FILTER_VALIDATE_EMAIL);
if ( $validation ) $output = 'proper email address';
else $output = 'wrong email address';
echo $output;
高级
此函数不仅检查给定电子邮件地址的格式是否正确,还执行主机是否存在性测试。
<?php
$email="[email protected]";
if (isValidEmail($email))
{
echo "Hooray! Adress is correct.";
}
else
{
echo "Sorry! No way.";
}
//Check-Function
function isValidEmail($email)
{
//Perform a basic syntax-Check
//If this check fails, there's no need to continue
if(!filter_var($email, FILTER_VALIDATE_EMAIL))
{
return false;
}
//extract host
list($user, $host) = explode("@", $email);
//check, if host is accessible
if (!checkdnsrr($host, "MX") && !checkdnsrr($host, "A"))
{
return false;
}
return true;
}
?>
正则表达式测试
function checkEmail($email) {
if(preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/",$email))
{
return true;
}
return false;
}
上面,带域名验证
function checkEmail($email) {
if(preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/",$email))
{
list($username,$domain)=split('@',$email);
if(!checkdnsrr($domain,'MX')) {
return false;
}
return true;
}
return false;
}
你是否在这里安装了它?我可以使用无效的电子邮件地址发布吗?让我们检查一下
哈哈..嘿Adrian,结果如何,让我们知道?
这会检查语法和MX记录,但如果我输入 [email protected] 呢?它会通过验证。查看amplemedia.com。他们使用更高级的算法来验证电子邮件,可以判断 [email protected] 是一个虚假的电子邮件。;
是的,但如果 [email protected] 是某人的真实电子邮件呢?
我如何才能只允许例如10个电子邮件地址的用户在我的网站上注册?我需要使用什么来检查电子邮件是否来自这10个正确的电子邮件地址???谢谢!
哦,我找到了方法!:) 我不知道这是否安全且有效,但请看看
你好,
我测试了高级电子邮件地址验证代码片段。
我犯错了吗,还是有错误?
我尝试使用“[email protected]”,这是我原始域名的稍微修改版本。
“Soltecks.de”既未在使用也未注册,请参阅“Denic.de”以获取更多信息,或直接验证。
代码片段显示“太棒了!地址正确。”但这不正确。
顺便说一句 - 我很欣赏你的网站。我获得了许多有用的信息。
此致
Swirl
城市:多特蒙德 / 州:德国
来自Drupal 6 + 一些修复
有更新的版本吗?
当然,提供的代码不符合电子邮件地址格式标准。例如 [email protected] 怎么办?