Algo más sencillo es utilizar expresiones regulares, como la función ereg()
http://es2.php.net/manual/es/function.ereg.php
Yo utilizo algo como esto para validar una dirección email, básicamente, desmenuza el formato de la dirección en tres trozos del tipo "algo" @ "algo" . "lo que sea"; asegurandome que en los tres trozos se cumple la expresión regular que he propuesto.
En este ejemplo, antes de la "@" se permiten letras, números y un punto, despues de la "@" lo mismo, pero despues del "." sólo se permiten letras, ademas está limitado a tres caracteres.
Código PHP:
if (!ereg("([a-zA-Z0-9\._].+)@([a-zA-Z0-9\.-].+)\\.(.[a-zA-Z]{1,4})",$NewEmail))
{
//Hacer algo para bloquear la continuación del script
}