2011-02-05 179 views
2

可能重複:
email address validationPHP - 電子郵件驗證

你好。 我有這個功能來驗證電子郵件地址

function isValidEmail($email){ 
return eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email); 
} 

它與域區域行之有效像.COM頁面沒有自動跳轉等,其中含有2至小數點後3個符號。我的問題是:包含.info.travel這樣的區域是否重要,長度超過3個符號,我應該擔心多個.co.uk等等。如何改善這些需求的功能?

+5

1. [`eregi` is deprecated](http://de3.php.net/manual/en/function.eregi.php)2.是,3.使用[`filter_var`](http:// de3.php.net/manual/en/function.filter-var.php)4. [它是重複的](http://stackoverflow.com/search?q=php+email+validation) – Gordon 2011-02-05 11:35:41

回答

6

有PHP中的本地函數來做到這一點,測試一下,看看它是否適合您的需要:

var_dump(filter_var('[email protected]', FILTER_VALIDATE_EMAIL)); 

P.S:是不是eregi()過時?