您的位置:首页技术文章
文章详情页

PHP IPwhois类

【字号: 日期:2024-02-01 14:04:36浏览:27作者:猪猪

原来写的IPwhois类

<?php/*** Class : IP Whois Verson 1.0* Info : Get IP's information form 4 whois server* Author : PhpUp Studio* Date : 12/12/2004* www.mypchelp.cn**/class IPWhois{ var $server = 'whois.arin.net'; var $target; var $timeout = 10; var $msg; function IPWhois($target) { $this->target = $target } function ShowInfo() { if($this->_CheckIP($this->target)) { $this->msg = $this->_GetInfo($this->server); if($this->_CheckInfo($this->msg)) { $this->msg = $this->_GetInfo($this->server); } } else $this->msg = '<p>Please Enter An IP Address<br></p>'; return $this->msg } function _CheckIP($temptarget) { if(eregi('[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}', $temptarget)) { $f = 1; $detail = explode('.',$temptarget); foreach($detail as $v) { if($v > 255 || $v < 0) { $f = 0; break };;;;; } } else $f =0; return $f; } function _GetInfo($tempserver) { $this->msg = ''; if(!$sock = fsockopen($tempserver, 43, $num, $error, $this->timeout)) { unset($sock); $this->msg = 'Timed-out connecting to $tempserver (port 43)'; } else { fputs($sock, '$this->targetn'); $this->msg .= '<p>IP Whois Information For <b>'.$this->target.'</b><br><br>'; $this->msg .= '-----------------------------------------------------------------<BR>'; while (!feof($sock)) $this->msg .= fgets($sock, 10240); $this->msg .= '-----------------------------------------------------------------<BR></p>'; } fclose($sock); return nl2br($this->msg); } function _CheckInfo($tempmsg) { if(eregi('whois.ripe.net', $tempmsg)) { $this->server = 'whois.ripe.net'; return 1; } elseif(eregi('whois.apnic.net', $tempmsg)) { $this->server = 'whois.apnic.net'; return 1; } elseif(eregi('whois.lacnic.net', $tempmsg)) { $this->server = 'whois.lacnic.net'; return 1; } else return 0; }}?>

调用

<?phpinclude './class.php';$target = isset($_GET['ip'])?gethostbyname($_GET['ip']):'NULL';if('NULL' == $target || '' == $target)$result = '<p>Please Input An IP Address<br></p>';else{ $whois = new IPWhois($target); //$result = 'IP Whois Information For <b>'.$_POST['ip'].'</b><br><br>'; $result = $whois->ShowInfo();}echo $result;?>

标签: PHP