php域可用性功能

时间:2009-08-03 02:35:49

标签: php

我找不到一个可以检查域是否可用的php域可用性函数,然后定义一个可用或不可用的$ status变量,所以我可以将它包含在我的消息中。

有关如何执行此操作的任何提示?我尝试了各种原生的PHP函数,如getdnsrr和其他人,但无法让它们工作。我只需要定义$ status,可用或不可用。

感谢您的帮助。

1 个答案:

答案 0 :(得分:5)

Google结果

<?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;
}
?>

返回ping服务器所用的时间 http://www.tutcity.com/view/check-your-server-status-a-basic-ping.10248.html


检查域名是否可用:

 <?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');