php判断类的属性的修饰(PHP whois查询类定义与用法示例)
php判断类的属性的修饰
PHP whois查询类定义与用法示例本文实例讲述了php whois查询类定义与用法。分享给大家供大家参考,具体如下:
whois.class.php
|
<?php class whois{ private $whois_servers = array ( "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 ; } } ?> |
调用的方式
|
<?php require ( "whois.class.php" ); $whois = new whois; echo $whois ->whoislookup( "www.zzvips.com" ); ?> |
运行结果:
domain name: jb51.net registry domain id: 527217184_domain_net-vrsn registrar whois server: whois.godaddy.com registrar url: http://www.godaddy.com updated date: 2016-05-26t08:17:44z creation date: 2006-07-22t03:11:39z registry expiry date: 2024-07-22t03:11:39z registrar: godaddy.com, llc registrar iana id: 146 registrar abuse contact email: abuse@godaddy.com registrar abuse contact phone: 480-624-2505 domain status: clientdeleteprohibited https://icann.org/epp#clientdeleteprohibited domain status: clientrenewprohibited https://icann.org/epp#clientrenewprohibited domain status: clienttransferprohibited https://icann.org/epp#clienttransferprohibited domain status: clientupdateprohibited https://icann.org/epp#clientupdateprohibited name server: ns1.dnsv2.com name server: ns2.dnsv2.com dnssec: unsigned url of the icann whois inaccuracy complaint form: https://www.icann.org/wicf/ >>> last update of whois database: 2019-04-03t03:32:17z <<< for more information on whois status codes, please visit https://icann.org/epp notice: the expiration date displayed in this record is the date the registrar's sponsorship of the domain name registration in the registry is currently set to expire. this date does not necessarily reflect the expiration date of the domain name registrant's agreement with the sponsoring registrar. users may consult the sponsoring registrar's whois database to view the registrar's reported date of expiration for this registration. terms of use: you are not authorized to access or query our whois database through the use of electronic processes that are high-volume and automated except as reasonably necessary to register domain names or modify existing registrations; the data in verisign global registry services' ("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.
PS:开心学习网在线工具箱
whois查询:https://tool.zzvips.com/t/whois/
希望本文所述对大家php程序设计有所帮助。
原文链接:https://blog.csdn.net/Huang6899587/article/details/86691640
- php-fpm配置文件在哪里(PHP-FPM 设置多pool及配置文件重写操作示例)
- php时间戳是什么意思(php时间戳转换代码详解)
- php 日志监控(php日志函数error_log用法实例分析)
- 阿里云ecs实例详解(阿里云ecs服务器 修改php上传最大限制的方法)
- dedecms手机独立域名(DedeCMS Wap.php 绑定域名的解决办法)
- php商城支付接口(php实现银联商务公众号+服务窗支付的示例代码)
- php 十六进制转换为二进制(PHP实现的62进制转10进制,10进制转62进制函数示例)
- linux如何安装php7.1.5环境(vmware linux系统安装最新的php7图解)
- php中变量定义规则(php use和include区别总结)
- php最好的探针(php探针不显示内存解决方法)
- phpstudy如何域名访问(phpStudy2016 配置多个域名期间遇到的问题小结)
- phpstudy不解析php代码(phpstudy伪静态设置的问题)
- php提供哪些函数来避免sql的注入(PHP与SQL语句写一句话木马总结)
- php开启curl(解决PHP使用CURL发送GET请求时传递参数的问题)
- php设计模式如何实现(php模式设计之观察者模式应用实例分析)
- thinkphp5设计权限(Thinkphp5.0 框架视图view的比较标签用法分析)
- 探索中国神秘文字(探索中国神秘文字)
- 重温《蜗居》 宋思明选中海藻为红颜知己,纯属巧合,与爱无关(宋思明选中海藻为红颜知己)
- 越南旅游攻略(越南旅游攻略自由行)
- 成都旅游攻略(成都旅游攻略自由行最佳线路)
- 给儿童吃什么最好(给儿童吃什么最好消化)
- 杭州旅游攻略()
热门推荐
- ip承载网和数通区别(网络线路科普之CN2,GIA,CIA,BGP以及IPLC都是什么意思)
- 如何查看sql语句执行时间
- mysql总是报错error(MySQL 5.6主从报错的实战记录)
- 如何提高移动网站的用户体验
- docker安装镜像失败(阿里云镜像安装docker报错的问题及解决方案)
- css3渐变放大功能(CSS3 渐变Gradients之CSS3 线性渐变)
- 部署ssis包提示更改保护级别(SSIS 延迟验证方法)
- python网页自动化selenium(python利用selenium进行浏览器爬虫)
- sql server显示当前登录用户命令(SQL Server正确删除Windows认证用户的方法)
- Js操作cookie
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9