Zum Inhalt springen

PHP-Funktion dns_check_record(): Alles, was Sie wissen müssen

Als PHP-Entwickler müssen Sie möglicherweise DNS-Einträge überprüfen oder prüfen, ob ein bestimmter Eintrag für eine Domain existiert. Historisch wurde hierfür die Funktion dns_check_record() verwendet. Bitte beachten Sie jedoch, dass dns_check_record() in PHP 7.3 als veraltet markiert und in PHP 8.0 vollständig entfernt wurde. Dieses Tutorial erklärt die veraltete Verwendung und stellt die moderne Alternative dns_get_record() vor, die für alle aktuellen PHP-Projekte empfohlen wird.

Was ist die Funktion dns_check_record()?

Die Funktion dns_check_record() war eine integrierte PHP-Funktion, mit der Sie prüfen konnten, ob ein bestimmter Typ eines DNS-Eintrags für einen angegebenen Domainnamen existierte. Sie gab einen booleschen Wert zurück: true, wenn der Eintrag existierte, und false andernfalls. Aufgrund der Entfernung in PHP 8.0 ist sie nur noch auf Legacy-Systemen (PHP 7.2 und früher) verfügbar.

So verwenden Sie die Funktion dns_check_record()

Die Verwendung der veralteten Funktion dns_check_record() war unkompliziert. Hier ist die Syntax:

Die Syntax der PHP-Funktion dns_check_record()

php
dns_check_record($host, $type);

Die Funktion erwartet zwei Parameter:

  • $host: Der Domainname, den Sie überprüfen möchten.
  • $type: Der Typ des DNS-Eintrags, den Sie überprüfen möchten. Dieser Parameter ist optional und standardmäßig auf "MX" festgelegt, wenn er nicht angegeben wird.

Da dns_check_record() in modernen PHP-Versionen nicht mehr unterstützt wird, verwenden Sie stattdessen dns_get_record(). So prüfen Sie einen bestimmten DNS-Eintrags-Typ:

So verwenden Sie die Funktion dns_get_record()?

php
<?php

$domain = "example.com";
$records = dns_get_record($domain, DNS_A);
if ($records) {
    echo "DNS record exists for $domain";
} else {
    echo "DNS record does not exist for $domain";
}

In diesem Beispiel prüfen wir, ob ein A-Eintrag für die Domain "example.com" existiert. Die Funktion gibt bei Erfolg ein Array mit den Einträgen zurück, andernfalls false.

Arten von DNS-Einträgen

Sowohl dns_check_record() als auch dns_get_record() können verschiedene Arten von DNS-Einträgen überprüfen. Der Parameter $type gibt den Typ des DNS-Eintrags an, den Sie überprüfen möchten. Hier sind einige der häufigsten DNS-Eintrags-Typen:

  • A: Gibt die IPv4-Adresse des Domainnamens zurück.
  • AAAA: Gibt die IPv6-Adresse des Domainnamens zurück.
  • MX: Gibt den Mail-Exchange-Server für die Domain zurück.
  • NS: Gibt den Nameserver für die Domain zurück.
  • CNAME: Gibt den kanonischen Namen für einen Alias zurück.

Fazit

Obwohl dns_check_record() einst ein Standardwerkzeug zur Überprüfung von DNS-Einträgen war, wurde es aus modernen PHP-Versionen entfernt. Durch die Verwendung der modernen Alternative dns_get_record() können Sie zuverlässig verschiedene DNS-Eintrags-Typen für jede Domain prüfen. Wir hoffen, dass dieser Leitfaden die veraltete Funktion erläutert und einen praktischen Weg für die aktuelle PHP-Entwicklung aufzeigt.

Praxis

Was macht die Funktion 'dns_check_record()' in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.