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>