一個PHP Whois網域名稱檢查函數代碼

來源:互聯網
上載者:User

   以前在做PHP主機網域名稱程式時候用的一個Whois檢查代碼,用來確定所查詢的網域名稱是否被註冊,函數囊括了大部分的網域名稱尾碼,將根據尾碼的不同串連到不同的查詢服務器,以前能用,時間關係,我現在暫時沒有測試那些查詢網址現在是否還能用,若不能用,就需要你自己找資料,看看現在的網址是什麼。

  01

  02function whois_query($domain) {

  03 $domain = strtolower(trim($domain));

  04 $domain = preg_replace('/^http:///i','',$domain);

  05 $domain = preg_replace('/^www./i','',$domain);

  06 $domain = explode('/',$domain);

  07 $domain = trim($domain[0]);

  08 // 切割網域名稱

  09 $_domain = explode('.',$domain);

  10 $lst = count($_domain)-1;

  11 $ext = $_domain[$lst];

  12 //定義不同網域名稱尾碼所需要串連的查詢服務器地址

  13 $servers = array(

  14 "biz" => "whois.neulevel.biz",

  15 "com" => "whois.internic.net",

  16 "us" => "whois.nic.us",

  17 "coop" => "whois.nic.coop",

  18 "info" => "whois.nic.info",

  19 "name" => "whois.nic.name",

  20 "net" => "whois.internic.net",

  21 "gov" => "whois.nic.gov",

  22 "edu" => "whois.internic.net",

  23 "mil" => "rs.internic.net",

  24 "int" => "whois.iana.org",

  25 "ac" => "whois.nic.ac",

  26 "ae" => "whois.uaenic.ae",

  27 "at" => "whois.ripe.net",

  28 "au" => "whois.aunic.net",

  29 "be" => "whois.dns.be",

  30 "bg" => "whois.ripe.net",

  31 "br" => "whois.registro.br",

  32 "bz" => "whois.belizenic.bz",

  33 "ca" => "whois.cira.ca",

  34 "cc" => "whois.nic.cc",

  35 "ch" => "whois.nic.ch",

  36 "cl" => "whois.nic.cl",

  37 "cn" => "whois.cnnic.net.cn",

  38 "cz" => "whois.nic.cz",

  39 "de" => "whois.nic.de",

  40 "fr" => "whois.nic.fr",

  41 "hu" => "whois.nic.hu",

  42 "ie" => "whois.domainregistry.ie",

  43 "il" => "whois.isoc.org.il",

  44 "in" => "whois.ncst.ernet.in",

  45 "ir" => "whois.nic.ir",

  46 "mc" => "whois.ripe.net",

  47 "to" => "whois.tonic.to",

  48 "tv" => "whois.tv",

  49 "ru" => "whois.ripn.net",

  50 "org" => "whois.pir.org",

  51 "aero" => "whois.information.aero",

  52 "nl" => "whois.domain-registry.nl"

  53 );

  54 if (!isset($servers[$ext])){

  55 die('Error: 沒有找到匹配的伺服器!');

  56 }

  57 $nic_server = $servers[$ext];

  58 $output = '';

  59 //串連網域名稱伺服器:

  60 if ($conn = fsockopen ($nic_server, 43)) {

  61 fputs($conn, $domain."rn");

  62 while(!feof($conn)) {

  63 $output .= fgets($conn,128);

  64 }

  65 fclose($conn);

  66 }

  67 else { die('Error: 不能串連到: ' . $nic_server . '!'); }

  68 return $output;

  69}

  70?>

  函數調用後,將直接返回結果。

相關文章

Cloud Intelligence Leading the Digital Future

Alibaba Cloud ACtivate Online Conference, Nov. 20th & 21st, 2019 (UTC+08)

Register Now >

Starter Package

SSD Cloud server and data transfer for only $2.50 a month

Get Started >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。