PHP 网络函数

PHP dns_check_record() 函数在 DNS 中搜索与指定类型对应的记录i>主机名。如果找到指定类型的记录,该函数返回 true,否则返回 false。

该函数是 checkdnsrr() 函数。

语法

dns_check_record(hostname, type) 

参数

hostname必填。 指定要检查的 IP 地址或主机名。
type可选。 指定要检查的记录类型。它可以是以下任意一项:
  • A
  • MX(默认)
  • NS
  • SOA
  • PTR
  • CNAME
  • AAAA
  • A6
  • SRV
  • NAPTR
  • TXT
  • ANY

返回值

如果找到任何记录,则返回 true ;如果未找到记录或发生错误,则返回 false。

示例:

下面的示例显示 dns_check_record() 函数的用法。

<?php
$domain="baidu.com";

//检查"MX"记录
if(dns_check_record($domain, "MX")){
  echo "Records exists.";
} else {
  echo "Records do not exist or an error occurred.";
}
?> 

上述代码的输出将类似于:

Records exists. 

示例:

再考虑一个检查其他记录类型的示例。

<?php
$domain="baidu.com";

$types = ["A", "MX", "NS", "SOA", "PTR", 
          "CNAME", "AAAA", "A6", "SRV", 
          "NAPTR", "TXT", "ANY"];

//检查记录类型
foreach($types as $i){
  if(dns_check_record($domain, $i)){
    echo "$i : found \n";
  } else {
    echo "$i : Not found \n";
  }  
}
?> 

上述代码的输出将类似于:

A : found 
MX : found 
NS : found 
SOA : found 
PTR : Not found 
CNAME : Not found 
AAAA : Not found 
A6 : Not found 
SRV : Not found 
NAPTR : Not found 
TXT : found 
ANY : found