clase Validador de emails
Una pequeña clase para validar emails hecha en PHP:
ValidadorEmail.php
PHP:
-
<?php
-
class ValidadorEmail
-
{
-
/**
-
* variables miembro Públicas
-
*/
-
var $email; // dirección de email a comprobar (String)
-
-
-
/**
-
* variables miembro Privadas
-
*/
-
var $exp_reg; // expresión regular (String)
-
-
-
-
/**
-
* método públco comprobarEmail
-
* @parametros Ninguno
-
* @devuelve (Boolean)
-
*/
-
-
function comprobarEmail ()
-
{
-
$this->exp_reg = "^[[:alnum:]_-]+"; // equivale a "^[a-z0-9_-]+"
-
$this->exp_reg .= "(\.[[:alnum:]_-]+){0,}"; // equivale a "(\.[a-z0-9_-]+){0,}"
-
$this->exp_reg .= "@";
-
$this->exp_reg .= "[[:alnum:]_-]+"; // equivale a "[a-z0-9_-]+"
-
$this->exp_reg .= "(\.[[:alnum:]_-]+){0,}"; // equivale a "(\.[a-z0-9_-]+){0,}"
-
$this->exp_reg .= "(\.[[:alpha:]]{2,3})$"; // equivale a "(\.[a-z]{2,3})$"
-
-
{
-
return (true);
-
}
-
else
-
{
-
return (false);
-
}
-
-
}
-
}
-
?>
Y un ejemplo de utilización:
comprobar_emails.php
PHP:
-
<?php
-
// incluimos la clase
-
include ( "ValidadorEmail.php" );
-
-
// creamos un array con varios emails válidos y no válidos para el ejemplo
-
"joan@joan.net",
-
"joan.joan@joan.org",
-
"joan@joan.co.ar",
-
"joan@joan.joan.joan.co.ar",
-
"joan@joan.joan.co.ar.re.ro",
-
"joan@joan.joan.com.ba.re.rom",
-
"joan@joan.joan.co.rem.roma",
-
"joan.@.joan.com",
-
"@joan@joan.com",
-
"joan.com",
-
"joan@joancom",
-
"joan@joan.",
-
"joañ@joan.com",
-
"joaç@joan.com",
-
"@joan.com",
-
"joan.joan@.com",
-
" joan@ joan.com",
-
"joan@ joan.com",
-
".joan@joan.com",
-
"joan@joan,com"
-
);
-
-
// instanciamos la clase
-
$validar = new ValidadorEmail ();
-
-
// iteramos el array de emails para comprobar su validez
-
for ( $i=0 ; $i<sizeof($emails) ; ++$i )
-
{
-
// asignamos el email a comprobar
-
$validar->email = $emails[$i];
-
// comprobamos su validez mediante el método de comprobación
-
$retorno = $validar->comprobarEmail ();
-
-
if ( $retorno == false )
-
{
-
}
-
else
-
{
-
}
-
-
}
-
?>
Lo cual devloverá:
Email correcto >> joan@joan.net Email correcto >> joan.joan@joan.org Email correcto >> joan@joan.co.ar Email correcto >> joan@joan.joan.joan.co.ar Email correcto >> joan@joan.joan.co.ar.re.ro Email correcto >> joan@joan.joan.com.ba.re.rom Email erróneo >> joan@joan.joan.co.rem.roma Email erróneo >> joan.@.joan.com Email erróneo >> @joan@joan.com Email erróneo >> joan.com Email erróneo >> joan@joancom Email erróneo >> joan@joan. Email erróneo >> joañ@joan.com Email erróneo >> joaç@joan.com Email erróneo >> @joan.com Email erróneo >> joan.joan@.com Email erróneo >> joan@ joan.com Email erróneo >> joan@ joan.com Email erróneo >> .joan@joan.com Email erróneo >> joan@joan,com
Referencias de interés: * Tutorial de expresiones regulares en BULMA
November 29, 2004 | Filed Under PHP











