2014-12-12 73 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"; 
    } 
相關問題