php查询whois信息的方法


Posted in PHP onJune 08, 2015

本文实例讲述了php查询whois信息的方法。分享给大家供大家参考。具体如下:

这里使用php通过查询whois信息的网站列表进行查询

function whois_query($domain) {
  // fix the domain name:
  $domain = strtolower(trim($domain));
  $domain = preg_replace('/^http:\/\//i', '', $domain);
  $domain = preg_replace('/^www\./i', '', $domain);
  $domain = explode('/', $domain);
  $domain = trim($domain[0]);
  // split the TLD from domain name
  $_domain = explode('.', $domain);
  $lst = count($_domain)-1;
  $ext = $_domain[$lst];
  // You find resources and lists 
  // like these on wikipedia: 
  //
  // http://de.wikipedia.org/wiki/Whois
  //
  $servers = array(
    "biz" => "whois.neulevel.biz",
    "com" => "whois.internic.net",
    "us" => "whois.nic.us",
    "coop" => "whois.nic.coop",
    "info" => "whois.nic.info",
    "name" => "whois.nic.name",
    "net" => "whois.internic.net",
    "gov" => "whois.nic.gov",
    "edu" => "whois.internic.net",
    "mil" => "rs.internic.net",
    "int" => "whois.iana.org",
    "ac" => "whois.nic.ac",
    "ae" => "whois.uaenic.ae",
    "at" => "whois.ripe.net",
    "au" => "whois.aunic.net",
    "be" => "whois.dns.be",
    "bg" => "whois.ripe.net",
    "br" => "whois.registro.br",
    "bz" => "whois.belizenic.bz",
    "ca" => "whois.cira.ca",
    "cc" => "whois.nic.cc",
    "ch" => "whois.nic.ch",
    "cl" => "whois.nic.cl",
    "cn" => "whois.cnnic.net.cn",
    "cz" => "whois.nic.cz",
    "de" => "whois.nic.de",
    "fr" => "whois.nic.fr",
    "hu" => "whois.nic.hu",
    "ie" => "whois.domainregistry.ie",
    "il" => "whois.isoc.org.il",
    "in" => "whois.ncst.ernet.in",
    "ir" => "whois.nic.ir",
    "mc" => "whois.ripe.net",
    "to" => "whois.tonic.to",
    "tv" => "whois.tv",
    "ru" => "whois.ripn.net",
    "org" => "whois.pir.org",
    "aero" => "whois.information.aero",
    "nl" => "whois.domain-registry.nl"
  );
  if (!isset($servers[$ext])){
    die('Error: No matching nic server found!');
  }
  $nic_server = $servers[$ext];
  $output = '';
  // connect to whois server:
  if ($conn = fsockopen ($nic_server, 43)) {
    fputs($conn, $domain."\r\n");
    while(!feof($conn)) {
      $output .= fgets($conn,128);
    }
    fclose($conn);
  }
  else { die('Error: Could not connect to ' . $nic_server . '!'); }
  return $output;
}
// Some example queries:
print whois_query('jonasjohn.de');
print whois_query('example.com');
print whois_query('example.org');

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
example1.php
Oct 09 PHP
php preg_match_all结合str_replace替换内容中所有img
Oct 11 PHP
php统计文件大小,以GB、MB、KB、B输出
May 29 PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 PHP
php的mkdir()函数创建文件夹比较安全的权限设置方法
Jul 28 PHP
Ubuntu中搭建Nginx、PHP环境最简单的方法
Mar 05 PHP
PHP扩展Memcache分布式部署方案
Dec 06 PHP
php数组函数array_key_exists()小结
Dec 10 PHP
php实现图片缩略图的方法
Mar 29 PHP
PHP插件PHPMailer发送邮件功能
Feb 28 PHP
asp函数split()对应php函数explode()
Feb 27 PHP
YII框架页面缓存操作示例
Apr 29 PHP
Yii获取当前url和域名的方法
Jun 08 #PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 #PHP
phpcms手机内容页面添加上一篇和下一篇
Jun 05 #PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 #PHP
php比较相似字符串的方法
Jun 05 #PHP
浅谈PHP接收POST数据方式
Jun 05 #PHP
php显示时间常用方法小结
Jun 05 #PHP
You might like
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
javascript onkeydown,onkeyup,onkeypress,onclick,ondblclick
2009/02/04 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
2011/03/17 Javascript
JS判断字符串长度的5个方法(区分中文和英文)
2014/03/18 Javascript
深入理解JavaScript系列(30):设计模式之外观模式详解
2015/03/03 Javascript
JS定义网页表单提交(submit)的方法
2015/03/20 Javascript
jquery利用拖拽方式在图片上添加热链接
2015/11/24 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
BootStrap的Datepicker控件使用心得分享
2016/05/25 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
AngularJS实现动态添加Option的方法
2017/05/17 Javascript
npm国内镜像 安装失败的几种解决方案
2017/06/04 Javascript
浅谈Vue-cli单文件组件引入less,sass,css样式的不同方法
2018/03/13 Javascript
vue实现在一个方法执行完后执行另一个方法的示例
2018/08/25 Javascript
vue中slot(插槽)的介绍与使用
2018/11/12 Javascript
javascript实现贪吃蛇小游戏
2020/07/28 Javascript
js实现点击烟花特效
2020/10/14 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
[01:41]DOTA2 2015国际邀请赛中国区预选赛第三日战报
2015/05/28 DOTA
[49:18]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 OG vs TNC
2018/04/01 DOTA
[00:49]完美世界DOTA2联赛10月28日开团时刻:随便打
2020/10/29 DOTA
python字典序问题实例
2014/09/26 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
2016/06/07 Python
Python实现一个简单的验证码程序
2017/11/03 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
Python命令行参数定义及需要注意的地方
2020/11/30 Python
ProBikeKit新西兰:自行车套件,跑步和铁人三项装备
2017/04/05 全球购物
蔻驰英国官网:COACH英国
2020/07/19 全球购物
如何设置Java的运行环境
2013/04/05 面试题
素质拓展感言
2014/01/29 职场文书
收银员岗位职责
2014/02/07 职场文书
记帐员岗位责任制
2014/02/08 职场文书
浪漫婚礼主持词开场白
2015/11/24 职场文书
彻底解决MySQL使用中文乱码的方法
2022/01/22 MySQL