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 相关文章推荐
判断php数组是否为索引数组的实现方法
Jun 13 PHP
使用Curl进行抓取远程内容时url中文编码问题示例探讨
Oct 29 PHP
PHP实现的比较完善的购物车类
Dec 02 PHP
php使用curl通过代理获取数据的实现方法
May 16 PHP
PHP二分查找算法示例【递归与非递归方法】
Sep 29 PHP
php有效防止图片盗用、盗链的两种方法
Nov 01 PHP
PHP编程 SSO详细介绍及简单实例
Jan 13 PHP
thinkphp分页集成实例
Jul 24 PHP
php通过各种函数判断0和空
Jul 04 PHP
详解php伪造Referer请求反盗链资源
Jan 24 PHP
PHP常见过waf webshell以及最简单的检测方法
May 21 PHP
基于laravel-admin 后台 列表标签背景的使用方法
Oct 03 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
世界上第一台立体声收音机
2021/03/01 无线电
php通过asort()给关联数组按照值排序的方法
2015/03/18 PHP
PHP6新特性分析
2016/03/03 PHP
根据key删除数组中指定的元素实现方法
2017/03/02 PHP
PHP实现微信对账单处理
2018/10/01 PHP
javascript 学习之旅 (1)
2009/02/05 Javascript
使用js在页面中绘制表格核心代码
2013/09/16 Javascript
JavaScript 判断用户输入的邮箱及手机格式是否正确
2013/12/08 Javascript
自己用jQuery写了一个图片的马赛克消失效果
2014/05/04 Javascript
Egret引擎开发指南之视觉编程
2014/09/03 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
NodeJS 实现手机短信验证模块阿里大于功能
2017/06/19 NodeJs
Popup弹出框添加数据实现方法
2017/10/27 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
详解如何在angular2中获取节点
2017/11/23 Javascript
Vue中的无限加载vue-infinite-loading的方法
2018/04/08 Javascript
Vue 全局loading组件实例详解
2018/05/29 Javascript
vue项目部署上线遇到的问题及解决方法
2018/06/10 Javascript
Layui tree 下拉菜单树的实例代码
2019/09/21 Javascript
基于js实现复制内容到操作系统粘贴板过程解析
2019/10/11 Javascript
微信小程序图片自适应实现解析
2020/01/21 Javascript
Vue实现手机计算器
2020/08/17 Javascript
[55:42]VG vs VGJ.T 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
Python实现导出数据生成excel报表的方法示例
2017/07/12 Python
基于Django filter中用contains和icontains的区别(详解)
2017/12/12 Python
创建pycharm的自定义python模板方法
2018/05/23 Python
在django view中给form传入参数的例子
2019/07/19 Python
Python selenium爬取微信公众号文章代码详解
2020/08/12 Python
python3爬虫中引用Queue的实例讲解
2020/11/24 Python
详解Html5中video标签那些属性和方法
2019/07/01 HTML / CSS
时尚孕妇装:Ingrid & Isabel
2019/05/08 全球购物
大学生年度个人总结
2015/02/15 职场文书
李清照的诗词赏析(20首)
2019/08/22 职场文书
MySQL时间盲注的五种延时方法实现
2021/05/18 MySQL
Django使用redis配置缓存的方法
2021/06/01 Redis
各种货币符号快捷输入
2022/02/17 杂记