PHP判断浏览器、判断语言代码分享

PHP编程中经常需要用到一些服务器的一些资料,特把$_SERVER的详细参数整理下,方便以后使用。

判断浏览器类型

  //判断类型    <?php  if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 8.0"))   echo "Internet Explorer 8.0";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 7.0"))   echo "Internet Explorer 7.0";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 6.0"))   echo "Internet Explorer 6.0";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/3"))   echo "Firefox 3";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/2"))   echo "Firefox 2";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"Chrome"))   echo "Google Chrome";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"Safari"))   echo "Safari";   else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera"))   echo "Opera";   else echo $_SERVER["HTTP_USER_AGENT"];   ?>  

判断语言

  <?php  $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4); //只取前4位,这样只判断最优先的语言。如果取前5位,可能出现en,zh的情况,影响判断。   if (preg_match("/zh-c/i", $lang))   echo "简体中文";   else if (preg_match("/zh/i", $lang))   echo "繁體中文";   else if (preg_match("/en/i", $lang))   echo "English";   else if (preg_match("/fr/i", $lang))   echo "French";   else if (preg_match("/de/i", $lang))   echo "German";   else if (preg_match("/jp/i", $lang))   echo "Japanese";   else if (preg_match("/ko/i", $lang))   echo "Korean";   else if (preg_match("/es/i", $lang))   echo "Spanish";   else if (preg_match("/sv/i", $lang))   echo "Swedish";   else echo $_SERVER["HTTP_ACCEPT_LANGUAGE"];   ?>  

判断浏览器内核的PHP程序

  <?php  error_reporting(E_ALL & ~ E_NOTICE);  class clientGetObj    {    function getBrowse()    {    global $_SERVER;    $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, $Browsers[$i])){    $browser = $Browsers[$i];    $browserver = '';    }    }    if(preg_match('/Mozilla/', $Agent) && !preg_match('/MSIE/', $Agent)){    $temp = explode('(', $Agent);    $Part = $temp[0];    $temp = explode('/', $Part);    $browserver = $temp[1];    $temp = explode(' ', $browserver);    $browserver = $temp[0];    $browserver = preg_replace('/([d.]+)/', '1', $browserver);    $browserver = $browserver;    $browser = 'Netscape Navigator';    }    if(preg_match('/Mozilla/', $Agent) && preg_match('/Opera/', $Agent)) {    $temp = explode('(', $Agent);    $Part = $temp[1];    $temp = explode(')', $Part);    $browserver = $temp[1];    $temp = explode(' ', $browserver);    $browserver = $temp[2];    $browserver = preg_replace('/([d.]+)/', '1', $browserver);    $browserver = $browserver;    $browser = 'Opera';    }    if(preg_match('/Mozilla/', $Agent) && preg_match('/MSIE/', $Agent)){    $temp = explode('(', $Agent);    $Part = $temp[1];    $temp = explode(';', $Part);    $Part = $temp[1];    $temp = explode(' ', $Part);    $browserver = $temp[2];    $browserver = preg_replace('/([d.]+)/','1',$browserver);    $browserver = $browserver;    $browser = 'Internet Explorer';    }    if($browser != ''){    $browseinfo = $browser.' '.$browserver;    } else {   $browseinfo = false;    }    return $browseinfo;    }        function getIP ()    {    global $_SERVER;    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;    }        function getOS ()    {    global $_SERVER;    $agent = $_SERVER['HTTP_USER_AGENT'];    $os = false;    if (preg_match('/win/', $agent) && strpos($agent, '95')){    $os = 'Windows 95';    }    else if (preg_match('/win 9x/', $agent) && strpos($agent, '4.90')){    $os = 'Windows ME';    }    else if (preg_match('/win/', $agent) && preg_match('98', $agent)){    $os = 'Windows 98';    }    else if (preg_match('/win/', $agent) && preg_match('nt 5.1', $agent)){    $os = 'Windows XP';    }    else if (preg_match('/win/', $agent) && preg_match('nt 5', $agent)){    $os = 'Windows 2000';    }    else if (preg_match('/win/', $agent) && preg_match('nt', $agent)){    $os = 'Windows NT';    }    else if (preg_match('/win/', $agent) && preg_match('32', $agent)){    $os = 'Windows 32';    }    else if (preg_match('/linux/', $agent)){    $os = 'Linux';    }    else if (preg_match('/unix/', $agent)){    $os = 'Unix';    }    else if (preg_match('/sun/', $agent) && preg_match('os', $agent)){    $os = 'SunOS';    }    else if (preg_match('/ibm/', $agent) && preg_match('os', $agent)){    $os = 'IBM OS/2';    }    else if (preg_match('/Mac/', $agent) && preg_match('PC', $agent)){    $os = 'Macintosh';    }    else if (preg_match('/PowerPC/', $agent)){    $os = 'PowerPC';    }    else if (preg_match('/AIX/', $agent)){    $os = 'AIX';    }    else if (preg_match('/HPUX/', $agent)){    $os = 'HPUX';    }    else if (preg_match('/NetBSD/', $agent)){    $os = 'NetBSD';    }    else if (preg_match('/BSD/', $agent)){    $os = 'BSD';    }    else if (preg_match('/OSF1/', $agent)){    $os = 'OSF1';    }    else if (preg_match('/IRIX/', $agent)){    $os = 'IRIX';    }    else if (preg_match('/FreeBSD/', $agent)){    $os = 'FreeBSD';    }    else if (preg_match('/teleport/', $agent)){    $os = 'teleport';    }    else if (preg_match('/flashget/', $agent)){    $os = 'flashget';    }    else if (preg_match('/webzip/', $agent)){    $os = 'webzip';    }    else if (preg_match('/offline/', $agent)){    $os = 'offline';    }    else {    $os = 'Unknown';    }    return $os;    }    }  $code = new clientGetObj;    echo $str1 = $code->getBrowse()."<br>";//浏览器:    echo $str2 = $code->getIP()."<br>";//IP地址:    echo $str3 = $code->getOS();//操作系统:    ?>

以上就是个人整理的关于$_SERVER获取服务器信息的常用信息了,希望大家能够喜欢。

PHP判断浏览器、判断语言代码分享

郑重声明:本网站发布的内容(图片、视频和文字)以及用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注