The php email filter doesn't follow the RFC for email addresses in all versions of php. Ever since I found that out, I've been using my own regex filter for email addresses.
I've managed email lists in the past, so I've seen all sorts of wacky email address formats that were valid according to the RFC, but many websites wouldn't accept them because of the limitations of their validation functions.
This is a little overly complex for just validating an email address, but I reuse portions of this for other things.
define('DELIM_S', "\\x02"); //starting delimiter
define('DELIM_E', "\\x02u"); //ending delimiter
* converts number to boolean
* @param string|int $num
* @return bool
return (is_numeric($num) && $num>0) ? true : false;
* validates an email address
* @param string $mail
* @param bool
/* start procedural scripting here */
$email = "email@example.com";
echo 'The email is valid';
echo 'The email is not valid';