Scripts
Check email met DNS
Met deze functie is het mogelijk om van een email te controlleren als de host werkelijk een mailserver heeft. 1. De functie haalt de hostname op uit het opgegeven emailadres 2. Haalt via DNS-lookup de mx (mail-exchange) records op. 3. Kijkt of er minstens 1 mx host is met een A of AAAA record. Indien alles doorlopen kan worden betekent dit dat de hostname mogelijks emails kan ontvangen. Deze controle betekent nog niet dat het email werkelijk bestaat bij deze host.
check-email-met-dns
<?php
function check_email_mx($email){
if(preg_match('#.+@(?<host>.+)#',$email,$match) > 0 and getmxrr($match['host'],$mxhosts)){
// mx records gevonden
$valid = false;
// mx records overlopen op zoek naar een geldige
while($host = next($mxhosts) and !$valid){
// een IPv4 of IPv6 adres volstaat
$valid = checkdnsrr($host, 'A') or checkdnsrr($host,'AAAA');
}
return $valid;
}
// geen geldig mail adres wegens geen
// correcte hostname of geen mx records
return false;
}
?>
Reacties
0