Validar un campo de Correo Electrónico (email)

Para validar una dirección de correo vamos a usar una expresión regular con la función preg_match , esta función nos devolverá un numero mayor que 0 si es correcto o 0 si no coincide el texto con la expresión regular, el código es: if (!preg_match('{^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$}',$_POST['email'])) { echo "error, no es un correo valido"; } La explicación de ese código seria: "si NO (!) devuelve un valor (no coincidió)" quitandole el ! seria: if (preg_match('{^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$}',$_POST['email'])) { echo "Correo Valido"; } En PHP existe una función que permite validar si un campo de correo electrónico está o no bien escrito, por alguna razón (en mi caso no me funciona, la función es filter-var. si…