DDR爱好者之家 Design By 杰米
本文实例讲述了PHP whois查询类定义与用法。分享给大家供大家参考,具体如下:
whois.class.php
<"com" => array("whois.verisign-grs.com","whois.crsnic.net"), "net" => array("whois.verisign-grs.com","whois.crsnic.net"), "org" => array("whois.pir.org","whois.publicinterestregistry.net"), "info" => array("whois.afilias.info","whois.afilias.net"), "biz" => array("whois.neulevel.biz"), "us" => array("whois.nic.us"), "uk" => array("whois.nic.uk"), "ca" => array("whois.cira.ca"), "tel" => array("whois.nic.tel"), "ie" => array("whois.iedr.ie","whois.domainregistry.ie"), "it" => array("whois.nic.it"), "li" => array("whois.nic.li"), "no" => array("whois.norid.no"), "cc" => array("whois.nic.cc"), "eu" => array("whois.eu"), "nu" => array("whois.nic.nu"), "au" => array("whois.aunic.net","whois.ausregistry.net.au"), "de" => array("whois.denic.de"), "ws" => array("whois.worldsite.ws","whois.nic.ws","www.nic.ws"), "sc" => array("whois2.afilias-grs.net"), "mobi" => array("whois.dotmobiregistry.net"), "pro" => array("whois.registrypro.pro","whois.registry.pro"), "edu" => array("whois.educause.net","whois.crsnic.net"), "tv" => array("whois.nic.tv","tvwhois.verisign-grs.com"), "travel" => array("whois.nic.travel"), "name" => array("whois.nic.name"), "in" => array("whois.inregistry.net","whois.registry.in"), "me" => array("whois.nic.me","whois.meregistry.net"), "at" => array("whois.nic.at"), "be" => array("whois.dns.be"), "cn" => array("whois.cnnic.cn","whois.cnnic.net.cn"), "asia" => array("whois.nic.asia"), "ru" => array("whois.ripn.ru","whois.ripn.net"), "ro" => array("whois.rotld.ro"), "aero" => array("whois.aero"), "fr" => array("whois.nic.fr"), "se" => array("whois.iis.se","whois.nic-se.se","whois.nic.se"), "nl" => array("whois.sidn.nl","whois.domain-registry.nl"), "nz" => array("whois.srs.net.nz","whois.domainz.net.nz"), "mx" => array("whois.nic.mx"), "tw" => array("whois.apnic.net","whois.twnic.net.tw"), "ch" => array("whois.nic.ch"), "hk" => array("whois.hknic.net.hk"), "ac" => array("whois.nic.ac"), "ae" => array("whois.nic.ae"), "af" => array("whois.nic.af"), "ag" => array("whois.nic.ag"), "al" => array("whois.ripe.net"), "am" => array("whois.amnic.net"), "as" => array("whois.nic.as"), "az" => array("whois.ripe.net"), "ba" => array("whois.ripe.net"), "bg" => array("whois.register.bg"), "bi" => array("whois.nic.bi"), "bj" => array("www.nic.bj"), "br" => array("whois.nic.br"), "bt" => array("whois.netnames.net"), "by" => array("whois.ripe.net"), "bz" => array("whois.belizenic.bz"), "cd" => array("whois.nic.cd"), "ck" => array("whois.nic.ck"), "cl" => array("nic.cl"), "coop" => array("whois.nic.coop"), "cx" => array("whois.nic.cx"), "cy" => array("whois.ripe.net"), "cz" => array("whois.nic.cz"), "dk" => array("whois.dk-hostmaster.dk"), "dm" => array("whois.nic.cx"), "dz" => array("whois.ripe.net"), "ee" => array("whois.eenet.ee"), "eg" => array("whois.ripe.net"), "es" => array("whois.ripe.net"), "fi" => array("whois.ficora.fi"), "fo" => array("whois.ripe.net"), "gb" => array("whois.ripe.net"), "ge" => array("whois.ripe.net"), "gl" => array("whois.ripe.net"), "gm" => array("whois.ripe.net"), "gov" => array("whois.nic.gov"), "gr" => array("whois.ripe.net"), "gs" => array("whois.adamsnames.tc"), "hm" => array("whois.registry.hm"), "hn" => array("whois2.afilias-grs.net"), "hr" => array("whois.ripe.net"), "hu" => array("whois.ripe.net"), "il" => array("whois.isoc.org.il"), "int" => array("whois.isi.edu"), "iq" => array("vrx.net"), "ir" => array("whois.nic.ir"), "is" => array("whois.isnic.is"), "je" => array("whois.je"), "jp" => array("whois.jprs.jp"), "kg" => array("whois.domain.kg"), "kr" => array("whois.nic.or.kr"), "la" => array("whois2.afilias-grs.net"), "lt" => array("whois.domreg.lt"), "lu" => array("whois.restena.lu"), "lv" => array("whois.nic.lv"), "ly" => array("whois.lydomains.com"), "ma" => array("whois.iam.net.ma"), "mc" => array("whois.ripe.net"), "md" => array("whois.nic.md"), "mil" => array("whois.nic.mil"), "mk" => array("whois.ripe.net"), "ms" => array("whois.nic.ms"), "mt" => array("whois.ripe.net"), "mu" => array("whois.nic.mu"), "my" => array("whois.mynic.net.my"), "nf" => array("whois.nic.cx"), "pl" => array("whois.dns.pl"), "pr" => array("whois.nic.pr"), "pt" => array("whois.dns.pt"), "sa" => array("saudinic.net.sa"), "sb" => array("whois.nic.net.sb"), "sg" => array("whois.nic.net.sg"), "sh" => array("whois.nic.sh"), "si" => array("whois.arnes.si"), "sk" => array("whois.sk-nic.sk"), "sm" => array("whois.ripe.net"), "st" => array("whois.nic.st"), "su" => array("whois.ripn.net"), "tc" => array("whois.adamsnames.tc"), "tf" => array("whois.nic.tf"), "th" => array("whois.thnic.net"), "tj" => array("whois.nic.tj"), "tk" => array("whois.nic.tk"), "tl" => array("whois.domains.tl"), "tm" => array("whois.nic.tm"), "tn" => array("whois.ripe.net"), "to" => array("whois.tonic.to"), "tp" => array("whois.domains.tl"), "tr" => array("whois.nic.tr"), "ua" => array("whois.ripe.net"), "uy" => array("nic.uy"), "uz" => array("whois.cctld.uz"), "va" => array("whois.ripe.net"), "vc" => array("whois2.afilias-grs.net"), "ve" => array("whois.nic.ve"), "vg" => array("whois.adamsnames.tc"), "yu" => array("whois.ripe.net") ); public function whoislookup($domain) { $domain = trim($domain); //remove space from start and end of domain if(substr(strtolower($domain), 0, 7) == "http://") $domain = substr($domain, 7); // remove http:// if included if(substr(strtolower($domain), 0, 4) == "www.") $domain = substr($domain, 4);//remove www from domain if(preg_match("/^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/",$domain)) return $this->queryWhois("whois.lacnic.net",$domain); elseif(preg_match("/^([-a-z0-9]{2,100})\.([a-z\.]{2,8})$/i",$domain)) { $domain_parts = explode(".", $domain); $tld = strtolower(array_pop($domain_parts)); $server = $this->WHOIS_SERVERS[$tld][0]; if(!$server) { return "Error: No appropriate Whois server found for $domain domain!"; } $res=$this->queryWhois($server,$domain); while(preg_match_all("/Whois Server: (.*)/", $res, $matches)) { $server=array_pop($matches[1]); $res=$this->queryWhois($server,$domain); } return $res; } else return "Invalid Input"; } private function queryWhois($server,$domain) { $fp = @fsockopen($server, 43, $errno, $errstr, 20) or die("Socket Error " . $errno . " - " . $errstr); if($server=="whois.verisign-grs.com") $domain="=".$domain; fputs($fp, $domain . "\r\n"); $out = ""; while(!feof($fp)){ $out .= fgets($fp); } fclose($fp); return $out; } } "htmlcode"><"whois.class.php"); $whois=new Whois; echo $whois->whoislookup("www.jb51.net"); "VeriSign") Whois database is provided by VeriSign for information purposes only, and to assist persons in obtaining information about or related to a domain name registration record. VeriSign does not guarantee its accuracy. By submitting a Whois query, you agree to abide by the following terms of use: You agree that you may use this Data only for lawful purposes and that under no circumstances will you use this Data to: (1) allow, enable, or otherwise support the transmission of mass unsolicited, commercial advertising or solicitations via e-mail, telephone, or facsimile; or (2) enable high volume, automated, electronic processes that apply to VeriSign (or its computer systems). The compilation, repackaging, dissemination or other use of this Data is expressly prohibited without the prior written consent of VeriSign. You agree not to use electronic processes that are automated and high-volume to access or query the Whois database except as reasonably necessary to register domain names or modify existing registrations. VeriSign reserves the right to restrict your access to the Whois database in its sole discretion to ensure operational stability. VeriSign may restrict or terminate your access to the Whois database for failure to abide by these terms of use. VeriSign reserves the right to modify these terms at any time. The Registry database contains ONLY .COM, .NET, .EDU domains and Registrars.更多关于PHP相关内容感兴趣的读者可查看本站专题:《php socket用法总结》、《php字符串(string)用法总结》、《PHP数学运算技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《PHP网络编程技巧总结》
希望本文所述对大家PHP程序设计有所帮助。
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月29日
2024年11月29日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]