public static function checkMX($host) { if (empty($host)) { return false; } $host_idna = self::normalizeHost($host); if (SystemEnvironment::functionExists('checkdnsrr')) { if (checkdnsrr($host_idna, 'MX') === false) { return false; } else { return true; } } else { @exec("nslookup -querytype=MX {$host_idna}", $output); while (list($k, $line) = each($output)) { # Valid records begin with host name if (preg_match("~^(" . preg_quote($host) . "|" . preg_quote($host_idna) . ")~i", $line)) { return true; } } return false; } }
public static function toUtf8($string) { if (SystemEnvironment::functionExists('mb_convert_encoding')) { $string = mb_convert_encoding($string, 'UTF-8', Config::get('intl.charset')); } else { if (SystemEnvironment::functionExists('iconv')) { $string = iconv(Config::get('intl.charset'), 'UTF-8', $string); } else { $string = utf8_encode($string); } } return $string; }