Com validar adreces de correu electrònic en un script PHP

Adreces de correu electrònic: fàcils de crear, difícils d'escriure.

Molt pot sortir malament. Molt pot semblar erroni i estar bé. Molt pot semblar bé i no funciona.

Obtenir les adreces de correu electrònic que recopileu: per obtenir un butlletí informatiu, per exemple, o per recuperar la contrasenya, almenys conformeu amb els estàndards (si no es garanteix) és crucial, per descomptat, i extremadament delicat.

Afortunadament, PHP (5 i posterior) ve amb un conjunt pràctic de funcions i filtres que fan que les proves per a la validesa de l'adreça de correu siguin ràpides.

Valideu adreces de correu electrònic en un script PHP

Per validar una adreça de correu electrònic per a la correcció (sense comprovar si l'adreça realment funciona i es llegeix) a PHP:

FILTER_VALIDATE_EMAIL Adhesió de la validació de l'adreça de correu electrònic de PHP

Tingueu en compte que FILTER_VALIDATE_EMAIL validarà les adreces de correu electrònic que continguin dominis i dominis de nivell superior que no existeixen. Si voleu evitar-ho, podeu provar els dominis de nivell superior que tinguin més de 4 caràcters (que esborraran erròniament ".museum") o els noms de domini que tinguin 2 caràcters de longitud (tot el país superior- dominis de nivell) o un dels dominis de nivell superior coneguts (que haurà d'actualitzar a mesura que la llista canvia).

FILTER_VALIDATE_EMAIL s'equivocarà de manera errònia a les adreces de correu electrònic amb noms de domini llargs (64 caràcters o més) i a les adreces de correu electrònic amb caràcters escapats (com "me" @ example.com "). Per evitar aquests falsos positius , podeu classe com php-email-address-validation.

Exemples de validació d'adreça de correu electrònic FILTER_VALIDATE_EMAIL

Si assumeix $ email_address manté l'adreça que es vol comprovar, podeu provar la seva validesa utilitzant:

També podeu filtrar una adreça de correu electrònic directament des del formulari web (suposant que l'adreça de correu electrònic s'ha capturat al camp amb el nom "correu electrònic"):