有些时候我们会需要通过获取浏览器的类型及使用的语言来做出相应的输出。那么如何能够得到浏览器的类型及使用的语言呢?本文就介绍如何用PHP来获取浏览器的类型及使用的语言。
用PHP判断浏览器类型其实很简单。因为浏览器在和服务器连接时候都会先发送一些包含自己信息的内容(浏览器类型、语言等)。
这里我们主要分析的是_SERVER“HTTP_USER_AGENT”和_SERVER“HTTP_ACCEPT_LANGUAGE”。我们所要做的就是把这些内容读出来,然后用strpos或者preg_match函数来对比就可以了。
header("content-type:text/html;charset=utf-8"); 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"]; }
判断浏览器语言的具体程序如下:
$lang=substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,4); 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 "Japanse"; }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"]; }
小结:判断浏览器类型主要是靠分析_SERVER[“HTTP_USER_AGENT”]的内容,而分析浏览器语言则是分析_SERVER[“HTTP_ACCEPT_LANGUAGE”]。
Atas ialah kandungan terperinci 通过PHP来检测用户浏览器的类型及使用的语言. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!