phpWhois.org/generic2.whois

79 lines
2.2 KiB
Text
Executable file

<?php
/*
Generic3.php PHP functions for parsing whois output
Copyright (C)2003
Maintained by Mark Jeftovic <markjr@easydns.com>
For the most recent version of this package:
http://www.easydns.com/~markjr/whois2/
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
function generic_whois ( $rawdata, $items )
{
$r="";
$disok=true;
while (list($key,$val)=each($rawdata))
{ if (trim($val)!="")
{
if (($val[0]=='%' || $val[0]=='#') && $disok)
{ $r['disclaimer'][]=trim(substr($val,1));
$disok=true;
continue;
}
$disok=false;
reset($items);
//$ok=0;
while (list($field, $match)=each($items))
{
$pos=strpos($val,$match);
if ($pos!==false)
{ $parts=explode(".",$field);
$var="\$r";
while (list($fn,$mn)=each($parts))
if ($mn=="")
$var=$var."[]";
else $var=$var."[\"".$mn."\"]";
$itm=trim(substr($val,$pos+strlen($match)));
//$itm=addslashes($itm);
if ($itm!="")
eval($var."=\"".$itm."\";");
//$ok=1;
break;
}
}
// buggy
//if ($ok==0 && $val[0]==" ")
// eval($var."=\"".trim($val)."\";");
}
}
if (empty($r))
$r['registered'] = 'no';
else
$r['registered'] = 'yes';
return $r;
}