loading
Please wait while loading...
Back Verify email address by PHP filter_var

To check an email address is valid or not, we always use preg_match. Today I found that php5 has already allow a function to do so, which is filter_var

filter_var($email, FILTER_VALIDATE_EMAIL)

However, most checking script include filter_var doesn't well checking the domain part. For example, an email xxx@xxx.com1 can pass the validation but .com1 is a invalid domain name, so I add some code to the function to imporve the function as below.

function verifyEmail($email) {
	if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
		return preg_match('/^([a-z]{2,4})$/', end(explode('.',$email)));
	}
	return false;
}

Note: I have set 2-4 letter in the last part of the domain, but you may know there exists some special domain will not pass the validation (such as .travel, .museum)

filter_var also allow some more checking function, such as FILTER_VALIDATE_URL, FILTER_VALIDATE_IP, you may read detail on php.net

Comments
comments powered by Disqus