Función para validar e-mails en PHP

Esta es una función muy práctica que además de comprobar que es un e-mail correcto comprueba que el dominio existe y aloja e-mails, la encontré perdida por un código antiguo(mío no era) y aqui os la dejo.


function check_email_mx($email) {
if( (preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/', $email)) ||
(preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email)) ) {
$host = explode('@', $email);
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
if (!function_exists('checkdnsrr')) {
function checkdnsrr($host, $type = '') {
if(!empty($host)) {
if($type == '') $type = "MX";
@exec("nslookup -type=$type $host", $output);
while(list($k, $line) = each($output)) {
if(eregi("^$host", $line)) {
return true;
}
}
return false;
}
}
}

Leave a Reply

Sobre mi

Soy un estudiante de Administración y Dirección de Empresas apasionado por el mundo de internet. Tengo 20 años, vivo en madrid la mayoría del año y opero una red de webs de ocio bajo mi empresa Saez Media SL.

José Sáez

Dopplr

Twitter

  • alguien conoce alguna asociacion española en #haiti que necesite gente? 3 weeks ago
  • “La razón por la que quieren que encajes es porque cuando lo hagas, entonces, podrán ignorarte”. de @sethgodin 4 weeks ago
  • there are no statues erected to critics 4 weeks ago
  • por que lo bloquear webs por isps es muy bonito pero los proxys ya estan muy extendidos 4 weeks ago
  • entremos en materia, que pasara entonces si creamos una sl fuera de españa con un nominee como titular que posea webs con enlaces ilegales? 4 weeks ago