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环境搭建最新方法
Sep 05 PHP
支持oicq头像的留言簿(二)
Oct 09 PHP
PHP的SQL注入实现(测试代码安全不错)
Feb 27 PHP
PHP文件打开、关闭、写入的判断与执行代码
May 24 PHP
php入门学习知识点二 PHP简单的分页过程与原理
Jul 14 PHP
解析PHP可变函数的经典用法
Jun 20 PHP
PHP中预定义的6种接口介绍
May 12 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
Jun 21 PHP
yii2使用gridView实现下拉列表筛选数据
Apr 10 PHP
PHP使用Redis长连接的方法详解
Feb 12 PHP
laravel 事件/监听器实例代码
Apr 12 PHP
php如何实现数据库的备份和恢复
Nov 30 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
IStream与TStream之间的相互转换
2008/08/01 PHP
PHP Directory 函数的详解
2013/03/07 PHP
PHP设计模式之工厂模式详解
2017/10/24 PHP
js中更短的 Array 类型转换
2011/10/30 Javascript
远离JS灾难css灾难之 js私有函数和css选择器作为容器
2011/12/11 Javascript
基于jQuery判断两个元素是否有重叠部分的代码
2012/07/25 Javascript
javascript中方便增删改cookie的一个类
2012/10/11 Javascript
Javascript的表单验证长度
2016/03/16 Javascript
使用AngularJS 跨站请求如何解决jsonp请求问题
2017/01/16 Javascript
Javascript基础回顾之(三) js面向对象
2017/01/31 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
vue loadmore 组件滑动加载更多源码解析
2017/07/19 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
2017/12/06 Javascript
一步步教会你微信小程序的登录鉴权
2018/04/09 Javascript
JS使用栈判断给定字符串是否是回文算法示例
2019/03/04 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
[02:30]联想杯DOTA2完美世界全国高校联赛—北京站现场
2015/11/16 DOTA
Python之pandas读写文件乱码的解决方法
2018/04/20 Python
学习python的前途 python挣钱
2019/02/27 Python
java判断三位数的实例讲解
2019/06/10 Python
Python3视频转字符动画的实例代码
2019/08/29 Python
Python+kivy BoxLayout布局示例代码详解
2020/12/28 Python
CSS3之边框多颜色Border-color属性使用示例
2013/10/11 HTML / CSS
调用HTML5的Canvas API绘制图形的快速入门指南
2016/06/17 HTML / CSS
HTML5 实现图片上传预处理功能
2020/02/06 HTML / CSS
BAILEY 44官网:美国制造的女性服装
2019/07/01 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
《沙漠中的绿洲》教学反思
2014/04/24 职场文书
教师自我剖析材料(群众路线)
2014/09/29 职场文书
基层党员群众路线教育实践活动个人对照检查材料思想汇报
2014/10/05 职场文书
门球健将观后感
2015/06/16 职场文书
趣味运动会通讯稿
2015/07/18 职场文书
2016干部作风整顿心得体会
2016/01/22 职场文书
JavaScript 定时器详情
2021/11/11 Javascript
Java 轮询锁使用时遇到问题
2022/05/11 Java/Android
html原生table实现合并单元格以及合并表头的示例代码
2023/05/07 HTML / CSS