PHP
Referenzliste
dns_get_record
Netzwerk-Funktionen
Befehl:
array dns_get_record ( string $hostname [, int $type = DNS_ANY [, array &$authns [, array &$addtl [, bool &$raw = false ]]]] )
Parameter-Liste:
Beschreibung | |
---|---|
hostname sollte ein gültiger DNS-Hostnamen wie "www.example.com". zu sein. Reverse-Lookups können mit in-addr.arpa-Notation erzeugt werden, aber gethostbyaddr() ist besser geeignet für die Mehrheit der Reverse-Lookups.Hinweis: Per DNS-Standards, werden E-Mail-Adressen in user.host-Format (zum Beispiel gegeben: user.host im Gegensatz zu hostmaster.example.com), sollten Sie diesen Wert überprüfen und ggf. ändern, bevor Sie es mit Funktionen wie mail(). | |
Standardmässig dns_get_record() wird für alle Ressourceneinträge mit hostname assoziiert suchen. Um die Abfrage zu beschränken, geben optional type -Parameter. Kann einer der folgenden sein: DNS_A , DNS_CNAME , DNS_HINFO , DNS_MX , DNS_NS , DNS_PTR , DNS_SOA , DNS_TXT , DNS_AAAA , DNS_SRV , DNS_NAPTR , DNS_A6 , DNS_ALL oder DNS_ANY .Hinweis: Aufgrund der Exzentrizitäten in der Leistung zwischen libresolv Plattformen DNS_ANY wird nicht immer jeden Datensatz zurückkehren, desto langsamer DNS_ALL alle Datensätze zuverlässiger zu sammeln. | |
Referenz übergeben und, falls angegeben, wird mit Ressourceneinträgen für die ritativen Nameserver füllt werden. | |
Referenz übergeben und, falls angegeben, wird mit jedem Weitere Rekorde füllt werden. | |
Bei rohen Modus, fragen wir nur die requestd Art statt Looping Art von Typ, bevor er mit der Zusatzinfo Zeug. |
Rückgabewerte:
Diese Funktion gibt ein Array von assoziativen Arrays, Im Fehlerfall wird
FALSE
zurückgegeben. Jede assoziative Array enthält at minimum die Tasten:Bedeutung | |
---|---|
host | Der Datensatz in der DNS-Namespace, auf die der Rest der zugehörigen Daten bezieht. |
class | dns_get_record() gibt nur Internet-Klassenrekorde und als solche diesem Parameter wird immer IN zurück. |
type | String, der den Satztyp. Zusätzliche Attribute werden auch in der resultierenden Anordnung von dem Wert des Typs enthalten sein. Siehe Tabelle unten. |
ttl | "Time To Live" Rest für diesen Datensatz. Dies wird not Original entsprechen TTL des Datensatzes, sondern eher gleich die Original-TTL minus Länge der Zeit, was auch immer passiert ist, seit die massgeblichen Name-Server abgefragt wurde. |
Type | Extra-Spalten |
---|---|
A | ip: Eine IPv4-Adressen in punktierter Dezimalschreibweise. |
MX | pri: Priorität der Mail-Exchanger. Niedrigere Zahlen weisen auf eine grössere Priorität. target: FQDN des Mailtauscher. siehe auch dns_get_mx(). |
CNAME | target: FQDN Lage im DNS-Namespace, zu dem der Datensatz Alias. |
NS | target: FQDN des Name-Server, die der für diese Hostname ist. |
PTR | target: Lage im DNS-Namespace, zu dem dieser Datensatz Punkten. |
TXT | txt: Beliebige Zeichenfolge Daten mit diesem Datensatz zugeordnet. |
HINFO | cpu: IANA Nummer, die das CPU der Maschine durch diesen Eintrag verwiesen. os em>: IANA Nummer, die das Betriebssystem auf der Maschine von diesem Datensatz verwiesen. Siehe IANA » Operating System Names die Bedeutung dieser Werte. |
SOA | mname: FQDN der Maschine, von der die Ressourceneinträge stammen. rname: E-Mail-Adresse des Verwaltungs enthalten für diese Domain. serial: Serial # dieser Revision der angeforderten Domäne. refresh: Refresh-Intervall (Sekunden) sekundären Name-Server sollten bei der Aktualisierung Fern Kopien dieser Domäne verwenden. retry: Länge der Zeit (Sekunden), um nach einem gescheiterten Auffrischungs warten, bevor sie einen zweiten Versuch. expire: Maximale Länge der Zeit (Sekunden) eine sekundäre DNS-Server Remote-Kopien der Zonendaten ohne einen erfolgreichen Refresh vor der Entsorgung zu behalten. minimum-ttl: Mindestzeitdauer (in Sekunden) ein Client weiterhin eine DNS-Auflösung verwenden, bevor es sollte eine neue Resolution vom Server anfordern. Kann durch individuelle Ressourceneinträge überschrieben werden. |
AAAA | ipv6: IPv6 address |
masklen: Länge (in Bit), von dem vom chain angegebenen Ziel erben. IPv6: Adresse für diesen bestimmten Datensatz mit chain zu verschmelzen. chain: Eltern mit Rekord ipv6 Daten zusammenführen. | |
SRV | pri: (Priority) niedrigsten Prioritäten sollten zuerst genutzt werden. weight: Ranking, um Gewicht zu, die von allgemein priorisiert targets sollten nach dem Zufallsprinzip ausgewählt werden. target und port: Hostnamen und Port, wo der angeforderte Dienst gefunden werden kann. Weitere Informationen finden Sie unter: » RFC 2782 |
NAPTR | order and pref: Entspricht pri und weight oben. flags, services, regex, und replacement: Parameter definiert durch » RFC 2915. |
Beschreibung:
Fetch DNS-Ressourceneinträge mit dem angegebenen
hostname
verbunden. Aktiv in Version:
(PHP 5, PHP 7)
Hinweis:
Hinweis:
Für die Kompatibilität mit PHP-Versionen vor 5.3.0 auf einigen Betriebssystemen, versuchen Sie die » PEAR Klasse » Net_DNS.
Siehe auch:
dns_get_record() - Beispiel:
Eingabe:
<?PHP $result = dns_get_record("php.net"); print_r($result); ?>
Ausgabe:
Array
(
[0] => Array
(
[host] => php.net
[type] => MX
[pri] => 5
[target] => pair2.php.net
[class] => IN
[ttl] => 6765
)
[1] => Array
(
[host] => php.net
[type] => A
[ip] => 64.246.30.37
[class] => IN
[ttl] => 8125
)
)
(
[0] => Array
(
[host] => php.net
[type] => MX
[pri] => 5
[target] => pair2.php.net
[class] => IN
[ttl] => 6765
)
[1] => Array
(
[host] => php.net
[type] => A
[ip] => 64.246.30.37
[class] => IN
[ttl] => 8125
)
)
Beschreibung:
Beschreibung | |
---|---|
5.4.0 | Hinzugefügt raw -Parameter. |
5.3.0 | Diese Funktion ist jetzt auf Windows-Plattformen verfügbar. |
5.3.0 | Vor dieser Version, wenn die authns -Parameter gegeben wurde, die addtl Parameter wurde ebenfalls erforderlich. |
dns_get_record() - Beispiel 2:
Eingabe:
Da es sehr häufig, um die IP-Adresse von einem Mail-Server wollen einmal der MX-Eintrag hat, behoben, dns_get_record () gibt ein Array auch in addtl die Gesellschafter Datensätze enthält. authns zurückgegeben als auch mit einer Liste der autoritativen Nameservern .
<?PHP /* Request "ANY" record for php.net, and create $authns and $addtl arrays containing list of name servers and any additional records which go with them */ $result = dns_get_record("php.net", DNS_ANY, $authns, $addtl); echo "Result = "; print_r($result); echo "Auth NS = "; print_r($authns); echo "Additional = "; print_r($addtl); ?>
Ausgabe:
Result = Array
(
[0] => Array
(
[host] => php.net
[type] => MX
[pri] => 5
[target] => pair2.php.net
[class] => IN
[ttl] => 6765
)
[1] => Array
(
[host] => php.net
[type] => A
[ip] => 64.246.30.37
[class] => IN
[ttl] => 8125
)
)
Auth NS = Array
(
[0] => Array
(
[host] => php.net
[type] => NS
[target] => remote1.easydns.com
[class] => IN
[ttl] => 10722
)
[1] => Array
(
[host] => php.net
[type] => NS
[target] => remote2.easydns.com
[class] => IN
[ttl] => 10722
)
[2] => Array
(
[host] => php.net
[type] => NS
[target] => ns1.easydns.com
[class] => IN
[ttl] => 10722
)
[3] => Array
(
[host] => php.net
[type] => NS
[target] => ns2.easydns.com
[class] => IN
[ttl] => 10722
)
)
Additional = Array
(
[0] => Array
(
[host] => pair2.php.net
[type] => A
[ip] => 216.92.131.5
[class] => IN
[ttl] => 6766
)
[1] => Array
(
[host] => remote1.easydns.com
[type] => A
[ip] => 64.39.29.212
[class] => IN
[ttl] => 100384
)
[2] => Array
(
[host] => remote2.easydns.com
[type] => A
[ip] => 212.100.224.80
[class] => IN
[ttl] => 81241
)
[3] => Array
(
[host] => ns1.easydns.com
[type] => A
[ip] => 216.220.40.243
[class] => IN
[ttl] => 81241
)
[4] => Array
(
[host] => ns2.easydns.com
[type] => A
[ip] => 216.220.40.244
[class] => IN
[ttl] => 81241
)
)
(
[0] => Array
(
[host] => php.net
[type] => MX
[pri] => 5
[target] => pair2.php.net
[class] => IN
[ttl] => 6765
)
[1] => Array
(
[host] => php.net
[type] => A
[ip] => 64.246.30.37
[class] => IN
[ttl] => 8125
)
)
Auth NS = Array
(
[0] => Array
(
[host] => php.net
[type] => NS
[target] => remote1.easydns.com
[class] => IN
[ttl] => 10722
)
[1] => Array
(
[host] => php.net
[type] => NS
[target] => remote2.easydns.com
[class] => IN
[ttl] => 10722
)
[2] => Array
(
[host] => php.net
[type] => NS
[target] => ns1.easydns.com
[class] => IN
[ttl] => 10722
)
[3] => Array
(
[host] => php.net
[type] => NS
[target] => ns2.easydns.com
[class] => IN
[ttl] => 10722
)
)
Additional = Array
(
[0] => Array
(
[host] => pair2.php.net
[type] => A
[ip] => 216.92.131.5
[class] => IN
[ttl] => 6766
)
[1] => Array
(
[host] => remote1.easydns.com
[type] => A
[ip] => 64.39.29.212
[class] => IN
[ttl] => 100384
)
[2] => Array
(
[host] => remote2.easydns.com
[type] => A
[ip] => 212.100.224.80
[class] => IN
[ttl] => 81241
)
[3] => Array
(
[host] => ns1.easydns.com
[type] => A
[ip] => 216.220.40.243
[class] => IN
[ttl] => 81241
)
[4] => Array
(
[host] => ns2.easydns.com
[type] => A
[ip] => 216.220.40.244
[class] => IN
[ttl] => 81241
)
)
Beschreibung:
Beschreibung | |
---|---|
5.4.0 | Hinzugefügt raw -Parameter. |
5.3.0 | Diese Funktion ist jetzt auf Windows-Plattformen verfügbar. |
5.3.0 | Vor dieser Version, wenn die authns -Parameter gegeben wurde, die addtl Parameter wurde ebenfalls erforderlich. |
Netzwerk-Funktionen