PHP | dns_get_record()函数
dns_get_record()函数是PHP的一个内置函数,它返回指定 Internet 主机名的 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 是默认值。
返回值:
- 它返回一组关联数组,失败时返回 FALSE。每个数组包含以下键(至少):
- 主机:主机名
- class:此函数只返回 Internet 类记录,因此始终返回 IN
- type:记录的类型
- ttl:此记录剩余的“生存时间”(计算为原始 ttl 减去
自查询服务器以来经过的时间长度)
注意:此函数适用于PHP 5.0.0 及更新版本。
示例 1:
PHP
PHP
$val){
echo $key.":".$val."";
}
echo "";
}
?>
PHP
".$type."
-------------
";
$res=dns_get_record($domain, $type);
foreach($res as $ar){
foreach($ar as $key=>$val){
echo $key.":".$val."";
}
echo "";
}
}
?>
输出:
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
$val){
echo $key.":".$val."";
}
echo "";
}
?>
输出:
示例 3: $type 的所有可能值
PHP
".$type."
-------------
";
$res=dns_get_record($domain, $type);
foreach($res as $ar){
foreach($ar as $key=>$val){
echo $key.":".$val."";
}
echo "";
}
}
?>
输出:
参考: https://www. PHP.net/manual/en/函数.dns-get-record。 PHP