自己整合了在網上找的一些關於獲取客戶端信息的php代碼,整合的不全,但也能獲取一些信息...
希望對大家有點幫助..
class getinfo
{
/*
getbrowse() get browse edition
getOS() get computy edition
nowurl() get url at moment
comurl() get come url
browerinfo() get browse information
language() get IE language
timeset() get Server time set
getIP() get custom ip
*/
function getbrowser()
{
$Agent = $_SERVER['HTTP_USER_AGENT'];
$browser = '';
$browserver = '';
$Browser = array('Lynx', 'MOSAIC', 'AOL', 'Opera', 'JAVA', 'MacWeb', 'WebExplorer', 'OmniWeb');
for($i = 0; $i <= 7; $i ++)
{
if(strpos($Agent, $Browser[$i]))
{
$browser = $Browser[$i];
$browserver = '';
}
}
if(ereg('Mozilla', $Agent) && !ereg('MSIE', $Agent))
{
$temp = explode('(', $Agent);
$Part = $temp[0];
$temp = explode('/', $Part);
$browserver = $temp[1];
$temp = explode(' ', $browserver);
$browserver = $temp[0];
$browserver = preg_replace('/([d.]+)/', '.', $browserver);
$browserver = $browserver;
$browser = 'Netscape Navigator';
}
if(ereg('Mozilla', $Agent) && ereg('Opera', $Agent))
{
$temp = explode('(', $Agent);
$Part = $temp[1];
$temp = explode(')', $Part);
$browserver = $temp[1];
$temp = explode(' ', $browserver);
$browserver = $temp[2];
$browserver = preg_replace('/([d.]+)/', '.', $browserver);
$browserver = $browserver;
$browser = 'Opera';
}
if(ereg('Mozilla', $Agent) && ereg('MSIE', $Agent))
{
$temp = explode('(', $Agent);
$Part = $temp[1];
$temp = explode(';', $Part);
$Part = $temp[1];
$temp = explode(' ', $Part);
$browserver = $temp[2];
$browserver = preg_replace('/([d.]+)/','.',$browserver);
$browserver = $browserver;
$browser = 'Internet Explorer';
}
if($browser != '')
{
$browseinfo = $browser.' '.$browserver;
}
else
{
$browseinfo = false;
}
return $browseinfo;
}
function getOS ()
{
$agent = $_SERVER['HTTP_USER_AGENT'];
$os = false;
if (eregi('win', $agent) && strpos($agent, '95'))
{
$os = 'Windows 95';
}
else if (eregi('win 9x', $agent) && strpos($agent, '4.90'))
{
$os = 'Windows ME';
}
else if (eregi('win', $agent) && ereg('98', $agent))
{
$os = 'Windows 98';
}
else if (eregi('win', $agent) && eregi('nt 5.2', $agent))
{
$os = 'Windows Server 2003';
}
else if (eregi('win', $agent) && eregi('nt 5.1', $agent))
{
$os = 'Windows XP';
}
else if (eregi('win', $agent) && eregi('nt 5', $agent))
{
$os = 'Windows Server 2000';
}
else if (eregi('win', $agent) && eregi('nt', $agent))
{
$os = 'Windows NT';
}
else if (eregi('win', $agent) && ereg('32', $agent))
{
$os = 'Windows 32';
}
else if (eregi('linux', $agent))
{
$os = 'Linux';
}
else if (eregi('unix', $agent))
{
$os = 'Unix';
}
else if (eregi('sun', $agent) && eregi('os', $agent))
{
$os = 'SunOS';
}
else if (eregi('ibm', $agent) && eregi('os', $agent))
{
$os = 'IBM OS/2';
}
else if (eregi('Mac', $agent) && eregi('PC', $agent))
{
$os = 'Macintosh';
}
else if (eregi('PowerPC', $agent))
{
$os = 'PowerPC';
}
else if (eregi('AIX', $agent))
{
$os = 'AIX';
}
else if (eregi('HPUX', $agent))
{
$os = 'HPUX';
}
else if (eregi('NetBSD', $agent))
{
$os = 'NetBSD';
}
else if (eregi('BSD', $agent))
{
$os = 'BSD';
}
else if (ereg('OSF1', $agent))
{
$os = 'OSF1';
}
else if (ereg('IRIX', $agent))
{
$os = 'IRIX';
}
else if (eregi('FreeBSD', $agent))
{
$os = 'FreeBSD';
}
else if (eregi('teleport', $agent))
{
$os = 'teleport';
}
else if (eregi('flashget', $agent))
{
$os = 'flashget';
}
else if (eregi('webzip', $agent))
{
$os = 'webzip';
}
else if (eregi('offline', $agent))
{
$os = 'offline';
}
else
{
$os = 'Unknown';
}
return $os;
}
function comurl()
{
if( !empty( $_SERVER['HTTP_REFERER'] ) )
{
return $_SERVER['HTTP_REFERER'];
}
else
{
return "";
}
}
function browserinfo()
{
return $_SERVER['HTTP_USER_AGENT'];
}
function nowurl()
{
return "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
}
function language()
{
return $_SERVER['HTTP_ACCEPT_LANGUAGE'];
}
function timeset()
{
return date_default_timezone_get();
}
function getIP() //get ip address
{
if (getenv('HTTP_CLIENT_IP'))
{
$ip = getenv('HTTP_CLIENT_IP');
}
else if (getenv('HTTP_X_FORWARDED_FOR'))
{
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
else if (getenv('REMOTE_ADDR'))
{
$ip = getenv('REMOTE_ADDR');
}
else
{
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
}
還有就是一些用Js代碼獲取客戶端信息的代碼,既然分組了,就不在這個地方寫了,不多...