javascript和JQuery焦点图和代码特效大全
当前最流行的开源CMS网站系统大全
当前位置:主页 > 编程开发 > PHP编程 >

PHP获取操作系统,浏览器,语言,IP等客户端信息

来源:IT技术网编辑:一页书发布于:2013-08-10人围观Php浏览器客户端操作系统IP语言

PHP获取操作系统,浏览器,语言,IP等客户端信息。具体代码如下:
<?php
class Client
{
  ////获得访客浏览器类型
function Get_Browser(){
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 "unknow";
   
  }
  
  ////获得访客浏览器语言
function Get_Lang(){
if(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
    $lang = substr($lang,0,5);
    if(preg_match("/zh-cn/i",$lang)){
      $lang = "简体中文";
    }
    elseif(preg_match("/zh/i",$lang)){
      $lang = "繁体中文";
    }
    else{
        $lang = "English";
    }
    return $lang;
    }
    else{
    return "unknow";
    }
  }
  
   ////获取访客操作系统
function Get_Os(){
    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 "unknow";
    }   
  }
  
  ////获得访客真实ip
function Get_Ip_Addr(){
    if(!empty($_SERVER["HTTP_CLIENT_IP"])){   
      $ip = $_SERVER["HTTP_CLIENT_IP"];
    }
    if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ //获取代理ip
    $ips = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
    }
    if($ip){
      $ips = array_unshift($ips,$ip); 
    }
    $count = count($ips);
for($i=0;$i<$count;$i++){   
    if(!preg_match("/^(10|172\.16|192\.168)\./i",$ips[$i])){//排除局域网ip
      $ip = $ips[$i];
      break;    
      }  
}  
    $tip = empty($_SERVER['REMOTE_ADDR']) ? $ip : $_SERVER['REMOTE_ADDR']; 
    if($tip=="127.0.0.1"){ //获得本地真实IP
      return self::get_onlineip();   
    }
    else{
      return $tip; 
    }
  }
  
  ////获得本地真实IP
  function get_onlineip() {
$ip_json = @file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=myip");
$ip_arr=json_decode(stripslashes($ip_json),1);
if($ip_arr['code']==0)
{
return $ip_arr['data']['ip'];
}
 
   }
  
  ////根据ip获得访客所在地地名
function Get_Ip_From($ip=''){
if(empty($ip)){
$ip = self::Getip();    
}
    $ip_json=@file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);//根据taobao ip
    $ip_arr=json_decode(stripslashes($ip_json),1);
    if($ip_arr['code']==0)
    {
    return $ip_arr;
    }
    else
    {
    return false;
    }
   
 
}

Php,浏览器,客户端,相关的文章
有时间的话来看看IT界的突发事件