Pāris gadu laikā veidotas daudzas un dažādas funkcijas e-pasta pārbaudēm viena no tām ir zemāk redzamā, šai te vienīgais pluss ir DNS ierakstu pārbaude.
function checkEmail($email){ // adreses sintakses pārbaude if( !preg_match( "/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $email)){ return false; } list($username,$domain)=split('@',$email); // Pārbaudam MX ierakstus iekš to DNS $mxhosts = array(); if(!getmxrr($domain, $mxhosts)){ if (!fsockopen($domain,25,$errno,$errstr,30)) { return false; } else { return true; } } else{ // Nekas netika atrasts foreach ($mxhosts as $host) { if (fsockopen($host,25,$errno,$errstr,30)){ return true; } } return false; } }
Pastāv arī iespēja izmantot kādu nopietnāku risinājumu – vairāk šeit
Kā arī varam izmantot php iebūvēto funkciju filter_var() ar parametru FILTER_VALIDATE_EMAIL
var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));
