<?php header('Content-Type: text/html; charset=utf-8'); class get_gust_info { //Get the visitor browser type function GetBrowser(){ if(!empty($_SERVER['HTTP_USER_AGENT'])){ $br = $_SERVER['HTTP_USER_AGENT']; if (preg_match('/MSIE/i',$br)) { $br = 'MSIE'; }elseif (preg_match('/Firefox/i',$br)) { $br = 'Firefox'; }elseif (preg_match('/Chrome/i',$br)) { $br = 'Chrome'; }elseif (preg_match('/Safari/i',$br)) { $br = 'Safari'; }elseif (preg_match('/Opera/i',$br)) { $br = 'Opera'; }else { $br = 'Other'; } return $br; }else{return "Failed to get browser information!";} } //Get the visitor's browser language function GetLang(){ if(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])){ $lang = $_SERVER['HTTP_ACCEPT_LANGUAGE']; $ lang = substr ($ lang, 0.5); if(preg_match("/zh-cn/i",$lang)){ $lang = "Simplified Chinese"; }elseif(preg_match("/zh/i",$lang)){ $lang = "Traditional Chinese"; }else{ $lang = "English"; } return $lang; }else{return "Failed to get browser language!";} } //get guest OS function GetOs(){ if(!empty($_SERVER['HTTP_USER_AGENT'])){ $OS = $_SERVER['HTTP_USER_AGENT']; if (preg_match('/win/i',$OS)) { $ OS = 'Windows'; }elseif (preg_match('/mac/i',$OS)) { $OS = 'MAC'; }elseif (preg_match('/linux/i',$OS)) { $OS = 'Linux'; }elseif (preg_match('/unix/i',$OS)) { $OS = 'Unix'; }elseif (preg_match('/bsd/i',$OS)) { $ OS = 'BSD'; }else { $OS = 'Other'; } return $OS; }else{return "Failed to get guest OS information!";} } //Get the real ip of the visitor function Getip(){ $ip=false; if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $ip = $_SERVER["HTTP_CLIENT_IP"]; } if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']); if ($ip) { array_unshift($ips, $ip); $ip = FALSE; } for ($i = 0; $i < count($ips); $i++) { if (!eregi ("^(10│172.16│192.168).", $ips[$i])) { $ip = $ips[$i]; break; } } } return ($ip ? $ip : $_SERVER['REMOTE_ADDR']); } //Get the location name of the visitor according to the ip function Getaddress($ip=''){ if(empty($ip)){ $ip = $this->Getip(); } $ipadd = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=".$ip); if($ipadd){ $charset = iconv("gbk","utf-8",$ipadd); preg_match_all("/[\x{4e00}-\x{9fa5}]+/u",$charset,$ipadds); $address = ''; foreach($ipadds[0] as $value){ $address.=$value; } return $address; //return a two-dimensional array }else{return "addree is none";} } } $gifo = new get_gust_info(); echo "your ip:".$gifo->Getip(); echo "<br/>Location: ".$gifo->Getaddress(); echo "<br/>Browser type: ".$gifo->GetBrowser(); echo "<br/>Browser language: ".$gifo->GetLang(); echo "<br/>OS: ".$gifo->GetOs();
Effect picture: