Se cerchi su un motore di ricerca "validate email php" ti verranno fuori un mare di script già pronti, probabilmente il 99% basati su espressioni regolari e 1% su filter_vars(), usa quello che vuoi, ma non impazzirti troppo, le regole per gli indirizzi email sono talmente permissive e mutevoli che la regex corretta al 100% probabilmente non esiste.