国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > PHP判断浏览器类型程序代码详解

PHP判断浏览器类型程序代码详解

来源:程序员人生   发布时间:2014-02-08 18:29:23 阅读次数:2993次

在php中如果要判断浏览器类型操作方法很简单的,我们只要利用全局变量HTTP_USER_AGENT就可以获取用户浏览器信息,这样我们就可以利用正则加以判断类型或浏览器版本了.

PHP如何判断浏览器类型及浏览器语言因为浏览器在和服务器连接时候都会先发送一些包含自己信息的内容(浏览器类型、语言).

这里我们主要分析的是_SERVER["HTTP_USER_AGENT"](浏览器类型)和_SERVER["HTTP_ACCEPT_LANGUAGE"](浏览器语言).我们所要做的就是把这些内容读出来,然后用strpos或者preg_match函数来对比就可以了.

判断浏览器类型实例代码如下:

  1. <?php echo $_SERVER["HTTP_USER_AGENT"];?> 

先给出PHP代码部分,有些不是很全,需要的朋友自己依葫芦画瓢自行添加去.(下面这个代码有个小错误,请将文章看完并自行修改)

实例代码如下:

  1. <?php 
  2. if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 9.0")) 
  3. echo "Internet Explorer 9.0"
  4. else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 8.0")) 
  5. echo "Internet Explorer 8.0"
  6. else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 7.0")) 
  7. echo "Internet Explorer 7.0"
  8. else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 6.0")) 
  9. echo "Internet Explorer 6.0"
  10. else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox")) 
  11. echo "Firefox"
  12. else if(strpos($_SERVER["HTTP_USER_AGENT"],"Chrome")) 
  13. echo "Chrome"
  14. else if(strpos($_SERVER["HTTP_USER_AGENT"],"Safari")) 
  15. echo "Safari"
  16. else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera")) 
  17. echo "Opera"
  18. else echo $_SERVER["HTTP_USER_AGENT"]; 
  19. ?> 

打开opera浏览器,可以看到它的页面请求头信息如下:

Opera/9.80 (Windows NT 5.1; U; Edition IBIS; zh-cn) Presto/2.10.229 Version/11.61

但是 strpos($_SERVER["HTTP_USER_AGENT"],"Opera") 返回的值始终是“0”

解决方法比较也比较简单,实例代码如下:

  1. else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera")) 
  2. 替换成 
  3. else if(strpos($_SERVER["HTTP_USER_AGENT"],"pera")) 

下面再补一个更强的可判断是浏览器用户还是seo/seo.html" target="_blank">搜索引擎

实例代码如下:

  1. function my_get_browser(){ 
  2.  if(emptyempty($_SERVER['HTTP_USER_AGENT'])){ 
  3.   return '命令行,机器人来了!'
  4.  } 
  5.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 9.0')){ 
  6.   return 'Internet Explorer 9.0'
  7.  } 
  8.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 8.0')){ 
  9.   return 'Internet Explorer 8.0'
  10.  } 
  11.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 7.0')){ 
  12.   return 'Internet Explorer 7.0'
  13.  } 
  14.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 6.0')){ 
  15.   return 'Internet Explorer 6.0'
  16.  } 
  17.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Firefox')){ 
  18.   return 'Firefox'
  19.  } 
  20.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Chrome')){ 
  21.   return 'Chrome'
  22.  } 
  23.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Safari')){ 
  24.   return 'Safari'
  25.  } 
  26.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Opera')){ 
  27.   return 'Opera'
  28.  } 
  29.  if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'360SE')){ 
  30.   return '360SE'
  31.  } 
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生