PHP dns_get_record() 函数

定义和用法

dns_get_record() 函数获取与指定主机名关联的 DNS 资源记录。

实例

获取与 "http://www.w3school.com.cn" 关联的 MX 资源记录:

<?php
print_r(dns_get_record("w3school.com.cn", DNS_MX));
?>

语法

dns_get_record(hostname, type, authns, addtl, raw)

参数值

参数 描述
hostname 必需。指定主机名(例如 "www.w3school.com.cn")。
type

可选。指定要搜索的资源记录类型。可以是以下之一:

  • 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(默认)
authns 可选。通过引用传递,如果设置,它将填充权威名称服务器的资源记录。
addtl 可选。通过引用传递,如果设置,它将填充任何附加记录。
raw

可选。布尔值。如果设置为 TRUE,则只查询请求的类型,而不是在获取信息之前按类型循环。

默认为 FALSE。

技术细节

返回值:

成功时返回一个关联数组的数组,失败时返回 FALSE。

每个数组至少包含以下键:

  • host - 主机名
  • class - 总是返回 IN(因为该函数只返回 Internet 类记录)
  • type - 记录类型
  • ttl - 此记录的剩余“生存时间”(原始 ttl 减去自查询服务器以来的时间长度)

数组中的其他键取决于 type 参数。

PHP 版本: 5.0+
PHP 更新日志:

PHP 7.0.16:添加了对 DNS_CAA 类型的支持。

PHP 5.4:添加了 raw 参数。

PHP 5.3:在 Windows 平台上可用。