2002-10-13 14:32:58 +00:00
|
|
|
|
|
|
|
$Id$
|
|
|
|
|
|
|
|
Introduction
|
|
|
|
------------
|
|
|
|
|
|
|
|
This package contains a Whois (RFC954) library for PHP. It allows
|
|
|
|
a PHP program to create a Whois object, and obtain the output of
|
|
|
|
a whois query with the Lookup function.
|
|
|
|
|
2003-03-07 21:27:19 +00:00
|
|
|
The response is an array containing, at least, an element 'rawdata',
|
|
|
|
containing the raw output from the whois request.
|
2002-10-13 14:32:58 +00:00
|
|
|
|
|
|
|
In addition, if the domain belongs to a registrar for which a special
|
|
|
|
handler exists, the special handler will parse the output and make
|
2003-03-07 21:27:19 +00:00
|
|
|
additional elements available in the response. The keys of these
|
|
|
|
additional elements are described in the file HANDLERS.
|
2002-10-13 14:32:58 +00:00
|
|
|
|
2005-08-26 08:11:15 +00:00
|
|
|
It also supports ip/AS whois queries which are very useful to trace
|
|
|
|
SPAM. You just only need to pass the doted quad ip address or the
|
|
|
|
AS (Autonomus System) handle instead of the domain name. Limited,
|
|
|
|
non-recursive support for Referral Whois (RFC 1714/2167) is also
|
|
|
|
provided.
|
2002-10-13 14:32:58 +00:00
|
|
|
|
2005-10-10 14:55:54 +00:00
|
|
|
Requirements
|
|
|
|
------------
|
|
|
|
|
|
|
|
phpWhois requires PHP 4.3.0 or better with OpenSSL support to
|
|
|
|
work properly. Without SSL support you will not be able to
|
|
|
|
query domains which do not have a whois server but that have
|
|
|
|
a https based whois. Also, you can run it in lower PHP versions
|
|
|
|
but without timeout control (see example.whois)
|
|
|
|
|
2002-10-13 14:32:58 +00:00
|
|
|
Installation
|
|
|
|
------------
|
|
|
|
|
2003-03-07 21:27:19 +00:00
|
|
|
Basically, untar the distribution somewhere and make sure the directory
|
|
|
|
is listed in 'include_path' in your php.ini file.
|
2002-10-13 14:32:58 +00:00
|
|
|
|
|
|
|
|
|
|
|
Example usage
|
|
|
|
-------------
|
|
|
|
|
|
|
|
(see example.php)
|
|
|
|
|
2005-07-27 10:22:02 +00:00
|
|
|
include('whois.main.php');
|
2002-10-13 14:32:58 +00:00
|
|
|
|
2005-07-27 10:22:02 +00:00
|
|
|
$whois = new Whois();
|
|
|
|
$result = $whois->Lookup('example.com');
|
2002-10-13 14:32:58 +00:00
|
|
|
echo "<pre>";
|
|
|
|
print_r($result);
|
|
|
|
echo "</pre>";
|
|
|
|
|
2004-04-22 17:45:41 +00:00
|
|
|
What you can query
|
|
|
|
------------------
|
|
|
|
|
|
|
|
You can use phpWhois to query domain names, ip addresses and
|
|
|
|
other information like AS, i.e, both of the following examples
|
|
|
|
work:
|
|
|
|
|
2005-07-27 10:22:02 +00:00
|
|
|
$whois = new Whois();
|
|
|
|
$result = $whois->Lookup('example.com');
|
2004-04-22 17:45:41 +00:00
|
|
|
|
2005-07-27 10:22:02 +00:00
|
|
|
$whois = new Whois();
|
|
|
|
$result = $whois->Lookup('62.97.102.115');
|
2004-04-22 17:45:41 +00:00
|
|
|
|
2005-07-27 10:22:02 +00:00
|
|
|
$whois = new Whois();
|
|
|
|
$result = $whois->Lookup('AS220');
|
2002-10-13 14:32:58 +00:00
|
|
|
|
|
|
|
Notes
|
|
|
|
-----
|
|
|
|
|
2005-08-29 11:07:12 +00:00
|
|
|
There is an extended class called "whois.utils.php" which contains a
|
2002-10-13 14:32:58 +00:00
|
|
|
debugging function called showObject(), if you showObject($result)
|
|
|
|
it will output the total layout of the returned object to the
|
|
|
|
web browser.
|
|
|
|
|
|
|
|
The latest version of the package and a demo script resides at
|
2005-07-27 10:22:02 +00:00
|
|
|
<http://phpwhois.sourceforge.net/>
|
2002-10-13 14:32:58 +00:00
|
|
|
|
|
|
|
There is also be an article describing the package on devshed.com
|
|
|
|
at <http://www.devshed.com/Server_Side/PHP/whois/>
|
|
|
|
|
|
|
|
|
|
|
|
Support/Patches
|
|
|
|
---------------
|
|
|
|
|
|
|
|
If you're really stuck and can't figure something out, or you want
|
|
|
|
to contribute an extended class for one of the TLD's, file a patch
|
|
|
|
or support request in the SourceForge tracker. One of the developers
|
|
|
|
will get around to applying or responding.
|
|
|
|
<http://sourceforge.net/projects/phpwhois>
|
|
|
|
|
|
|
|
|
|
|
|
Credits
|
|
|
|
-------
|
|
|
|
|
2002-10-13 14:33:57 +00:00
|
|
|
Mark Jeftovic <markjr@easydns.com>
|
2003-03-07 21:27:19 +00:00
|
|
|
David Saez Padros <david@ols.es>
|
2002-10-13 14:32:58 +00:00
|
|
|
Ross Golder <ross@golder.org>
|