// Mettons www.c2script.com pour l'exemple.
$input_domaine = 'www.c2script.com';
if(!preg_match("#^(?:https?://(?:www\.)?)?(?:[-\w.]+\.)?(?<principal>[-\w]+\.[a-z]+)$#", $input_domaine, $matching))
exit("Domaine incorrect");
$domaine = $matching['principal'];
$domain_with_dot = $domaine . '.';
//on met echo en array, pour l'afficher plus tard avec un saut de ligne entre chaque informations qu'on va récupérer
$echo = [];
if(gethostbyname($domain_with_dot) != $domain_with_dot){
$dispo = false;
$echo[] = "Domaine non disponible avec <i>gethostbyname</i>";
}else{
$echo[] = "Domaine disponible avec <i>gethostbyname</i>";
}
if($dispo){
// Lorsque vous mettez "ANY", la fonction check tous les types d'enregistrements.
// Rechercher avec "A" peut être plus efficace en termes de performances, vous pouvez rechercher seulement l'existence d'un enregistrement de type "A" pour savoir si le domaine a une adresse IP. Le type "A" est généralement utilisé pour associer un domaine à une adresse IP.
if(checkdnsrr($domain_with_dot, "ANY") === true){
$dispo = false;
$echo[] = "Domaine non disponible avec <i>checkdnsrr</i>";
}else{
$echo[] = "Domaine disponible avec <i>checkdnsrr</i>";
}
}
var_dump($domaine, $dispo);
echo implode('<br>', $echo);
//supposons que l'utilisateur puisse entrer un domaine
// $input_domaine = 'htto://wwww.c2script.com';
$input_domaine = 'www.c2script.com';
//vérification du domaine
//on peut le proposer avec ou sans http/https, et avec ou sans www.
//si le domaine proposé est avec un sous-domaine, on récupère seulement le domaine principal
//on fait une correspondance avec <principal> pour le trouver facilement dans notre array matching
if(!preg_match("#^(?:https?://(?:www\.)?)?(?:[-\w.]+\.)?(?<principal>[-\w]+\.[a-z]+)$#", $input_domaine, $matching))
exit("Domaine incorrect");
$domaine = $matching['principal'];
//le point est nécessaire pour demander d'arrêter la recherche au caractère qui le précède (dans notre cas, à .com), sinon il va rechercher c2script.com.votre-domaine.tld
$domain_with_dot = $domaine . '.';
//echo array, pour afficher plus tard les infos avec un saut de ligne
$echo = [];
$dispo = true;
if(gethostbyname($domain_with_dot) != $domain_with_dot){
$dispo = false;
$echo[] = "Domaine non disponible avec <i>gethostbyname</i>";
}else{
$echo[] = "Domaine disponible avec <i>gethostbyname</i>";
}
//seulement si $dispo est encore à true afin d'économiser du temps de recherche et des ressources
//fait la vérification avec checkdnsrr pour avoir une sureté supplémentaire concernant la disponibilité
if($dispo){
//vérifie si disponibilité avec checkdnsrr
if(checkdnsrr($domain_with_dot, "ANY") === true){
//DNS trouvé, domaine non disponible
$dispo = false;
$echo[] = "Domaine non disponible avec <i>checkdnsrr</i>";
}else{
$echo[] = "Domaine disponible avec <i>checkdnsrr</i>";
}
}
var_dump($domaine, $dispo);
echo implode('<br>', $echo);
J'espère que ce script gratuit vous sera utile dans vos projets.Si vous souhaitez soutenir mon travail, un simple clic sur le bouton "Donner remercier" ci-dessous ou une note serait grandement apprécié. Merci pour votre générosité !
Vous cherchez à pousser encore plus loin vos idées ou à les concrétiser avec un site internet sur mesure ? Je suis là pour vous aider ! Mon expérience en développement web est à votre disposition.
Que ce soit la création de votre site web pro ou l'apport de fonctionnalités avancées à votre projet, contactez-moi pour en discuter et avoir un devis gratuit personnalisé.
Mon objectif est de vous offrir des solutions sur mesure qui répondent à vos besoins, et votre vision associée à mon expertise donnera vie à votre projet web parfait. Contactez-moi aujourd'hui, je réponds en général en moins d'une heure :
Demander un devis