A continuación dos modos de validar una dirección de email con php.
La primera mediante una expresión regular y la segunda mediante filter_var que se encarga de filtrar variables mediante filtros (valga la redundancia).
Como ejemplo, un pequeño formulario con un inputtype tipo texto y un botón de envío.
La primera mediante una expresión regular y la segunda mediante filter_var que se encarga de filtrar variables mediante filtros (valga la redundancia).
Como ejemplo, un pequeño formulario con un inputtype tipo texto y un botón de envío.
<HTML> <HEAD></HEAD> <BODY> <p>Validando email</p> <form action="" method="post"> <input type="text" value="" name="email"/> <input type="submit" value="validar" /> </form> </BODY> <?php $email=isset($_POST['email']) ? $_POST['email'] :null; if(validarEmail_ExpresionRegular($email)){ echo "Expresion Regular. La dirección de email $email es correcta.</br>"; } else echo "Expresion Regular. La dirección de email $email es incorrecta.</br>"; if (is_valid_email_FilterVar($email)){ print "Filter_var. La dirección de email $email es correcta.</br>"; } else print "Filter_var. La dirección de email $email es incorrecta.</br>"; /* ********************************** * FUNCIONES DE VALIDACIÓN DE EMAIL * *************************************/ // Función para validar email usando un expresión regular function validarEmail_ExpresionRegular($emailAValidar){ $matches = null; return (1 === preg_match('/^[A-z0-9\\._-]+@[A-z0-9][A-z0-9-]*(\\.[A-z0-9_-]+)*\\.([A-z]{2,6})$/', $emailAValidar, $matches)); } // Función para validar email usando un filter_var // en la que se filtran variables mediante filtros (valga la redundancia) function is_valid_email_FilterVar($str) { return (false !== filter_var($str, FILTER_VALIDATE_EMAIL)); } ?> </HTML>