2014-12-12 161 views

回答

3

的一种方式,以验证使用的电子邮件地址,最好的办法 PHP内置的验证:

http://php.net/manual/en/filter.examples.validation.php

<?php 
$email_a = '[email protected]'; 
$email_b = 'bogus'; 

if (filter_var($email_a, FILTER_VALIDATE_EMAIL)) { 
    echo "This ($email_a) email address is considered valid."; 
} 
if (filter_var($email_b, FILTER_VALIDATE_EMAIL)) { 
    echo "This ($email_b) email address is considered valid."; 
} 
?> 

简单,有效,可靠。

从symcbean的评论是值得加入到这个答案,因为它没有错过:

验证电子邮件的最好方法是发送电子邮件的地址包含一次性pssword链接。这只是一个快速的正则表达式检查。它不存在域。它不检查域是否有MX记录。它不检查MTA是否接受邮件。它不检查邮箱是否被接受。它不检查电子邮件是否可交付....

+0

对于完全相同的答案,你可以在7秒之内击败它! – 2014-12-13 00:02:13

+0

验证电子邮件的最佳方式是使用包含一次性密码的链接向该地址发送电子邮件。这只是一个快速的正则表达式检查。它不存在域。它不检查域是否有MX记录。它不检查MTA是否接受邮件。它不检查邮箱是否被接受。它不检查电子邮件是否可交付.... – symcbean 2014-12-13 00:04:25

+0

@symcbean从来不是问题,他从来没有要求“电子邮件地址是否确实存在,配置是否正确并且能够接收电子邮件”,也没有任何与“一次性密码”。他明确要求如何检查'@'和'.',并得到比这更好的答案。 – 2014-12-13 00:06:34

0
$email_a = '[email protected]'; 
$email_b = 'bogus'; 

if (filter_var($email_a, FILTER_VALIDATE_EMAIL)) { 
    echo "This ($email_a) email address is considered valid."; 
} 
if (filter_var($email_b, FILTER_VALIDATE_EMAIL)) { 
    echo "This ($email_b) email address is considered valid."; 
} 

Straight from the PHP manual,为php validate email搜索时先打上谷歌。

0

你可以使用filter_input()方法,see documentation

例如

if(!filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL)) 
    { 
    echo "E-Mail is not valid"; 
    } 
else 
    { 
    echo "E-Mail is valid"; 
    } 
相关问题