Yo uso esta función para validar emails... Mira a ver si te sirve:
Código PHP:
function checkemail($email) {
// check if email is valid
if( !eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*"."@([a-z0-9]+([\.-][a-z0-9]+))*$",$email, $regs)){
return false;
} else if( gethostbyname($regs[2]) == $regs[2] ){
// if host is invalid
return false;
} else {
return true;
}
}
Saludos.