3

これが私の現在のコードです:

function get_cmd ()
{
    if (file_exists('/usr/local/bin/whois'))
        $cmd = '/usr/local/bin/whois';
    elseif (file_exists('/usr/bin/whois'))
        $cmd = '/usr/bin/whois';
    elseif (file_exists('/bin/whois'))
        $cmd = '/bin/whois';
    else
        die('whois shell command does not exist');

    return $cmd;
}

function get_whois ($cmd, $domain) 
{
    if (checkdnsrr($domain))
        $result = shell_exec(escapeshellcmd($cmd ." ". $domain));
    else
        $result = 'DOMAIN IS NOT REGISTERED';

    return $result;
}

$cmd = get_cmd();
echo get_whois($cmd, 'google.com');

さて、さまざまな正規表現を思いつくことなく、ドメインの有効期限を簡単に抽出できる別の方法はありますか? 情報のフォーマットはドメインごとに異なるため...

4

2 に答える 2

0

このコードはあなたに有効期限を与えます

<? 
$detail = "whois " . $_GET['domain']; 
$res = shell_exec($detail); 
$start = strpos($res,"Expiration"); 
echo substr($res,$start+16,11); 
?>
于 2012-04-05T06:06:01.863 に答える
0

私は先に進み、これに正規表現を使用しました。一部のレジストラは、whois で有効期限を提供していません。

于 2011-07-07T00:12:08.283 に答える