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,則在獲取信息之前,不查詢type-by-type,而是僅查詢所請求的類型。 FALSE是默認值。
返回值:
- 它返回一個關聯數組的數組,失敗則返回FALSE。每個數組包含以下鍵(至少):
- 主辦:主機名
- 類:此函數僅返回Internet類記錄,因此始終返回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:$type的所有可能值
<?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
相關用法
- p5.js nfc()用法及代碼示例
- p5.js nfp()用法及代碼示例
- d3.js d3.hcl()用法及代碼示例
- p5.js nfs()用法及代碼示例
- PHP cos( )用法及代碼示例
- PHP sin( )用法及代碼示例
- p5.js nf()用法及代碼示例
- PHP tan( )用法及代碼示例
- PHP pow( )用法及代碼示例
- d3.js d3.map.set()用法及代碼示例
- d3.js d3.set.has()用法及代碼示例
- PHP Ds\Set xor()用法及代碼示例
注:本文由純淨天空篩選整理自gekcho大神的英文原創作品 PHP | dns_get_record() function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。