IPwhois类[PHP]

王朝php·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

原来写的IPwhois类

<?php

/*

*

* Class : IP Whois Verson 1.0

* Info : Get IP's information form 4 whois server

* Author : PhpUp Studio

* Date : 12/12/2004

*

*/

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->target\n");

$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;

}

}

?>

调用

<?php

include './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;

?>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航