Validar correo en PHP con filter_var y FILTER_VALIDATE_EMAIL

En PHP es muy común el envío de correos electrónicos. Hoy veremos cómo validar si una cadena es realmente un correo electrónico o email usando la constante FILTER_VALIDATE_EMAIL y filter_var.

No veremos cómo comprobar si el correo existe, solamente veremos si el correo es válido. Para comprobar que el correo realmente existe puedes enviarle un mensaje de confirmación generando un token seguro y enviándolo como HTML.

Validar correo

Para validar un correo electrónico llamamos a filter_var, le pasamos el posible correo electrónico y luego la constante de FILTER_VALIDATE_EMAIL.

La función de PHP que valida una dirección de correo electrónico regresa los datos filtrados o FALSE en caso de que los datos no sean válidos. Veamos un ejemplo de código:

Pasamos la dirección y luego la constante que indica qué cosa debería ser. Regresará el correo filtrado, o false.

Si regresa false significa que el correo no es válido. Por cierto, podríamos simplificar el if a:

if($correo){}

Pero prefiero ser explícito.