一个PHP Whois域名检查函数代码
来源: 阅读:980 次 日期:2014-09-18 14:57:13
温馨提示: 小编为您整理了“一个PHP Whois域名检查函数代码”,方便广大网友查阅!

以前在做PHP主机域名程序时候用的一个Whois检查代码,用来确定所查询的域名是否被注册,函数囊括了大部分的域名后缀,将根据后缀的不同连接到不同的查询服务器,以前能用,时间关系,我现在暂时没有测试那些查询网址现在是否还能用,若不能用,就需要你自己找资料,看看现在的网址是什么。

01

02function whois_query($domain) {

03 $domain = strtolower(trim($domain));

04 $domain = preg_replace('/^http:///i','',$domain);

05 $domain = preg_replace('/^www./i','',$domain);

06 $domain = explode('/',$domain);

07 $domain = trim($domain[0]);

08 // 切割域名

09 $_domain = explode('.',$domain);

10 $lst = count($_domain)-1;

11 $ext = $_domain[$lst];

12 //定义不同域名后缀所需要连接的查询服务器地址

13 $servers = array(

14 "biz" => "whois.neulevel.biz",

15 "com" => "whois.internic.net",

16 "us" => "whois.nic.us",

17 "coop" => "whois.nic.coop",

18 "info" => "whois.nic.info",

19 "name" => "whois.nic.name",

20 "net" => "whois.internic.net",

21 "gov" => "whois.nic.gov",

22 "edu" => "whois.internic.net",

23 "mil" => "rs.internic.net",

24 "int" => "whois.iana.org",

25 "ac" => "whois.nic.ac",

26 "ae" => "whois.uaenic.ae",

27 "at" => "whois.ripe.net",

28 "au" => "whois.aunic.net",

29 "be" => "whois.dns.be",

30 "bg" => "whois.ripe.net",

31 "br" => "whois.registro.br",

32 "bz" => "whois.belizenic.bz",

33 "ca" => "whois.cira.ca",

34 "cc" => "whois.nic.cc",

35 "ch" => "whois.nic.ch",

36 "cl" => "whois.nic.cl",

37 "cn" => "whois.cnnic.net.cn",

38 "cz" => "whois.nic.cz",

39 "de" => "whois.nic.de",

40 "fr" => "whois.nic.fr",

41 "hu" => "whois.nic.hu",

42 "ie" => "whois.domainregistry.ie",

43 "il" => "whois.isoc.org.il",

44 "in" => "whois.ncst.ernet.in",

45 "ir" => "whois.nic.ir",

46 "mc" => "whois.ripe.net",

47 "to" => "whois.tonic.to",

48 "tv" => "whois.tv",

49 "ru" => "whois.ripn.net",

50 "org" => "whois.pir.org",

51 "aero" => "whois.information.aero",

52 "nl" => "whois.domain-registry.nl"

53 );

54 if (!isset($servers[$ext])){

55 die('Error: 没有找到匹配的服务器!');

56 }

57 $nic_server = $servers[$ext];

58 $output = '';

59 //连接域名服务器:

60 if ($conn = fsockopen ($nic_server, 43)) {

61 fputs($conn, $domain."rn");

62 while(!feof($conn)) {

63 $output .= fgets($conn,128);

64 }

65 fclose($conn);

66 }

67 else { die('Error: 不能连接到: ' . $nic_server . '!'); }

68 return $output;

69}

70?>

函数调用后,将直接返回结果。

更多信息请查看IT技术专栏

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!

2025国考·省考课程试听报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map