Рубрики

PHP | функция dns_get_record ()

Функция dns_get_record () — это встроенная функция в PHP, которая возвращает записи ресурсов DNS для указанного имени хоста в Интернете.

Синтаксис:

dns_get_record($host, $type, $authoritative, $additional, $raw);

Параметр: эта функция принимает пять параметров, как указано выше и описано ниже:

  • $ host : это обязательный параметр. Он указывает имя хоста, чьи записи ресурсов DNS должны быть найдены.
  • $ type : это необязательный параметр. Указывает тип DNS-записи для поиска. Возможные значения
    • DNS_A
    • DNS_CNAME
    • DNS_HINFO
    • DNS_CAA
    • DNS_MX
    • DNS_NS
    • DNS_PTR
    • DNS_SOA
    • DNS_TXT
    • DNS_AAAA
    • DNS_SRV
    • DNS_NAPTR
    • DNS_A6
    • DNS_ALL
    • DNS_ANY (по умолчанию)
  • $ authoritative: это необязательный параметр. Он передается по ссылке и заполняется записями ресурсов для полномочных серверов имен, если они установлены.
  • $ Additional: это необязательный параметр. Он передается по ссылке, он будет заполнен любыми дополнительными записями, если они установлены.
  • $ raw: это необязательный параметр. Булев параметр Если установлено значение TRUE, вместо циклического преобразования типа по типу он запрашивает только запрошенный тип, прежде чем получить информацию. ЛОЖЬ — это значение по умолчанию.

Возвращаемое значение:

  • Возвращает массив ассоциативных массивов, FALSE при ошибке. Каждый массив содержит следующие ключи (по крайней мере):
    • хост: имя хоста
    • class: эта функция возвращает только записи интернет-класса, поэтому всегда возвращает IN
    • тип: тип записи
    • ttl: «Time To Live», оставшееся для этой записи (рассчитывается как оригинальный ttl минус
      время, прошедшее с момента запроса сервера)

Примечание. Эта функция доступна для PHP 5.0.0 и более поздних версий.

Пример 1:

<?php

print_r(dns_get_record("geeksforgeeks.org", DNS_MX));

?>

Выход:

Array ( [0] => Array ( [host] => geeksforgeeks.org [class] => IN [ttl] => 299 [type] => MX [pri] => 1 [target] => aspmx.l.google.com ) [1] => Array ( [host] => geeksforgeeks.org [class] => IN [ttl] => 299 [type] => MX [pri] => 10 [target] => alt3.aspmx.l.google.com ) [2] => Array ( [host] => geeksforgeeks.org [class] => IN [ttl] => 299 [type] => MX [pri] => 10 [target] => alt4.aspmx.l.google.com ) [3] => Array ( [host] => geeksforgeeks.org [class] => IN [ttl] => 299 [type] => MX [pri] => 5 [target] => alt1.aspmx.l.google.com ) [4] => Array ( [host] => geeksforgeeks.org [class] => IN [ttl] => 299 [type] => MX [pri] => 5 [target] => alt2.aspmx.l.google.com ) )

Пример 2: систематический вывод

<?php

$res=dns_get_record("geeksforgeeks.org", DNS_MX);

foreach($res as $ar){

  

    foreach($ar as $key=>$val){

            echo $key.":".$val."</br>";

    }

    echo "</br>";

}

  
?>

Выход:

Пример 3: все возможные значения типа $

<?php

$domain="geeksforgeeks.org";

single_type_dns_get_record($domain, DNS_A);

single_type_dns_get_record($domain, DNS_CNAME);

single_type_dns_get_record($domain, DNS_HINFO);

single_type_dns_get_record($domain, DNS_CAA);

single_type_dns_get_record($domain, DNS_MX);

single_type_dns_get_record($domain, DNS_NS);

single_type_dns_get_record($domain, DNS_PTR);

single_type_dns_get_record($domain, DNS_SOA);

single_type_dns_get_record($domain, DNS_TXT);

single_type_dns_get_record($domain, DNS_AAAA);

single_type_dns_get_record($domain, DNS_SRV);

single_type_dns_get_record($domain, DNS_NAPTR);

single_type_dns_get_record($domain, DNS_A6);

single_type_dns_get_record($domain, DNS_ALL);

single_type_dns_get_record($domain, DNS_ANY);

  

function single_type_dns_get_record($domain, $type){

    echo "-------------<br>".$type."<br>-------------<br>";

    $res=dns_get_record($domain, $type);

    foreach($res as $ar){

        foreach($ar as $key=>$val){

                echo $key.":".$val."</br>";

        }

        echo "</br>";

    }

}

  
?>

Выход:

Ссылка: https://www.php.net/manual/en/function.dns-get-record.php

Рекомендуемые посты:

PHP | функция dns_get_record ()

0.00 (0%) 0 votes