if (!$res->total()) {
return array();
}
- $mxs = array();
- while (list($host, $text) = $res->next()) {
- $host = preg_quote($host, '/');
- $host = str_replace('\*', '.*', $host);
- $host = str_replace('\?', '.', $host);
- $mxs[] = array('host' => "/^$host\\.?$/", 'text' => $text);
- }
+ $mxs = $res->fetchAllAssoc();
$mails = array();
foreach ($this->emails as &$mail) {
if ($mail->active) {
$broken = false;
foreach ($mxs as &$mx) {
foreach ($lcl_mxs as $lcl) {
- if (preg_match($mx['host'], $lcl)) {
+ if (fnmatch($mx['host'], $lcl)) {
$broken = $mx['text'];
break;
}