- //判断浏览器类型
- echo $_SERVER["HTTP_USER_AGENT"];
- //判断浏览器语言
- echo $_SERVER["HTTP_ACCEPT_LANGUAGE"];
- ?>
下面是两个完整的示例,分别判断浏览器类型、浏览器语言。
1、判断浏览器类型
- 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"];
- ?>
2、判断浏览器语言
- $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"];
- /*@ http://bbs.it-home.org */
- ?>
从以上代码,可以看到php判断浏览器类型,主要是借助_SERVER["HTTP_USER_AGENT"],而分析浏览器语言则是使用_SERVER["HTTP_ACCEPT_LANGUAGE"]。
从原理上来讲,浏览器在与服务器连接时总会先发送一些包括(浏览器类型、语言)类的信息。
我们可以借助php全局变更$_SERVER,诸如_SERVER["HTTP_USER_AGENT"](浏览器类型)和_SERVER["HTTP_ACCEPT_LANGUAGE"](浏览器语言)来获取到相关信息,然后用strpos或者preg_match函数来对比就可以了。
好了,关于php判断浏览器类型、浏览器语言等的内容就介绍到这了。
您可能感兴趣的文章:
PHP判断浏览器类型的代码
php 获取访问者浏览器的代码
php获取客户端浏览器与操作系统信息的方法 |