public function isValid($email)
{
// Does it look like an email address?
if (!$this->isEmail($email)) {
return false;
}
// Is is an example domain?
if ($this->isExample($email)) {
return false;
}
// Is is a it disposable?
if ($this->isDisposable($email)) {
return false;
}
// Is it role based?
if ($this->isRole($email)) {
return false;
}
// Does it have an MX record?
if (!$this->hasMx($email)) {
return false;
}
return true;
}