Fonction PHP dns_get_record() : Tout ce que vous devez savoir
En tant que développeur PHP, vous devrez peut-être obtenir différents types d'enregistrements DNS pour un nom de domaine. La fonction dns_get_record() est une fonction intégrée à PHP qui vous permet de récupérer ces enregistrements.
⚠️ Avis de dépréciation : dns_get_record() a été dépréciée dans PHP 8.2 et supprimée dans PHP 8.4. Pour les applications PHP modernes, envisagez d'utiliser l'extension getdns, des commandes système comme dig ou nslookup via shell_exec(), ou des bibliothèques DNS tierces.
Qu'est-ce que la fonction dns_get_record() ?
La fonction dns_get_record() récupère différents types d'enregistrements DNS pour un nom de domaine donné. Elle retourne un tableau d'enregistrements DNS en fonction du type d'enregistrement que vous spécifiez.
Comment utiliser la fonction dns_get_record()
L'utilisation de la fonction dns_get_record() est simple. Voici la syntaxe de la fonction :
Syntaxe PHP de la fonction dns_get_record()
dns_get_record($hostname, $type = DNS_ANY, &$authns = NULL, &$addtl = NULL);La fonction prend quatre paramètres :
$hostname: Le nom de domaine pour lequel vous souhaitez récupérer les enregistrements DNS.$type: Le type d'enregistrement DNS que vous souhaitez récupérer. Ce paramètre est optionnel et vaut par défautDNS_ANYs'il n'est pas spécifié.&$authns: Une variable qui stocke les serveurs de noms DNS autoritaires pour le domaine.&$addtl: Une variable qui stocke des informations supplémentaires sur les enregistrements DNS.
Voici un exemple d'utilisation de la fonction dns_get_record() pour récupérer les enregistrements A et MX d'un nom de domaine, tout en capturant les serveurs de noms autoritaires et les enregistrements supplémentaires :
Comment utiliser la fonction dns_get_record() ?
<?php
$domain = "example.com";
$authns = [];
$addtl = [];
$records = dns_get_record($domain, DNS_A | DNS_MX, $authns, $addtl);
print_r($records);La fonction retourne un tableau de tableaux associatifs. Chaque élément représente un enregistrement DNS et contient des clés communes comme host, type, class et ttl. En fonction du type d'enregistrement, elle inclut également des clés spécifiques au type telles que ip (ou ipv6), priority, target, txt ou ns.
Types d'enregistrements DNS
La fonction dns_get_record() peut récupérer différents types d'enregistrements DNS. Voici quelques-uns des types les plus courants :
A: Retourne l'adresse IPv4 du nom de domaine.AAAA: Retourne l'adresse IPv6 du nom de domaine.MX: Retourne le serveur de messagerie (mail exchange) pour le nom de domaine.NS: Retourne le serveur de noms pour le nom de domaine.CNAME: Retourne le nom canonique pour un alias.
Conclusion
La fonction dns_get_record() est un outil utile pour récupérer différents types d'enregistrements DNS pour un nom de domaine. En comprenant la syntaxe et l'utilisation de la fonction, vous pouvez facilement obtenir les enregistrements DNS nécessaires à votre application PHP. Nous espérons que cet article vous a été informatif et utile pour comprendre la fonction dns_get_record() en PHP.
Pratique
Quel est l'objectif de la fonction dns_get_record() en PHP ?