2009-08-03 6 views
2

Je ne trouve pas de fonction de disponibilité de domaine php qui puisse vérifier si un domaine est disponible ou non, puis définir une variable d'état $ disponible ou indisponible, donc je peux l'inclure dans mon message.fonction de disponibilité de domaine php

Des conseils sur la façon de procéder? J'ai essayé différentes fonctions php natives comme getdnsrr et d'autres, mais je n'arrive pas à les faire fonctionner. J'ai simplement besoin de définir $ status, tel qu'il est disponible, ou indisponible.

Merci pour l'aide.

+0

Que voulez-vous dire par "disponible"? Voulez-vous dire la machine sur laquelle les points de domaine est opérationnel et donc disponible pour les demandes? Voulez-vous dire disponible comme dans "Personne n'a encore enregistré ce domaine, donc il est disponible à l'achat"? Autre chose? – GordonM

Répondre

5

Google Résultat

<?php 
// Function to check response time 
function pingDomain($domain){ 
    $starttime = microtime(true); 
    $file  = fsockopen ($domain, 80, $errno, $errstr, 10); 
    $stoptime = microtime(true); 
    $status = 0; 

    if (!$file) $status = -1; // Site is down 
    else { 
     fclose($file); 
     $status = ($stoptime - $starttime) * 1000; 
     $status = floor($status); 
    } 
    return $status; 
} 
?> 

Renvoie le temps qu'il a fallu pour ping le serveur.
http://www.tutcity.com/view/check-your-server-status-a-basic-ping.10248.html


Pour vérifier si un domaine est avaiable:

<?php 
    function checkDomain($domain,$server,$findText){ 
     // Open a socket connection to the whois server 
     $con = fsockopen($server, 43); 
     if (!$con) return false; 

     // Send the requested doman name 
     fputs($con, $domain."\r\n"); 

     // Read and store the server response 
     $response = ' :'; 
     while(!feof($con)) { 
      $response .= fgets($con,128); 
     } 

     // Close the connection 
     fclose($con); 

     // Check the response stream whether the domain is available 
     if (strpos($response, $findText)){ 
      return true; 
     } 
     else { 
      return false; 
     } 
    } 
?> 

$status = checkDomain("stackoverflow.com",'whois.crsnic.net','No match for'); 
+1

bon conseil mais j'ai besoin de déterminer si le domaine est enregistré ou non – mrpatg

+1

Oh, puis une seconde. –

+1

Vous gagnez 20 000 internets. J'aurais aimé qu'il y ait un bouton câlin sur SO parce que je suis en train de le pousser maintenant. Merci beaucoup. – mrpatg

Questions connexes