PHP判断当前使用的是什么浏览器(推荐)

吾爱主题 阅读:188 2021-09-15 16:23:00 评论:0

PHP简单判断当前使用的是什么浏览器,判断浏览器类型的方法,方便统计网站访问用户使用浏览器的比例。

判断浏览器类型方法一

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 function userBrowser() {   $user_OSagent = $_SERVER [ 'HTTP_USER_AGENT' ];     if ( strpos ( $user_OSagent , "Maxthon" ) && strpos ( $user_OSagent , "MSIE" )) {   $visitor_browser = "Maxthon(Microsoft IE)" ;   } elseif ( strpos ( $user_OSagent , "Maxthon 2.0" )) {   $visitor_browser = "Maxthon 2.0" ;   } elseif ( strpos ( $user_OSagent , "Maxthon" )) {   $visitor_browser = "Maxthon" ;   } elseif ( strpos ( $user_OSagent , "MSIE 9.0" )) {   $visitor_browser = "MSIE 9.0" ;   } elseif ( strpos ( $user_OSagent , "MSIE 8.0" )) {   $visitor_browser = "MSIE 8.0" ;   } elseif ( strpos ( $user_OSagent , "MSIE 7.0" )) {   $visitor_browser = "MSIE 7.0" ;   } elseif ( strpos ( $user_OSagent , "MSIE 6.0" )) {   $visitor_browser = "MSIE 6.0" ;   } elseif ( strpos ( $user_OSagent , "MSIE 5.5" )) {   $visitor_browser = "MSIE 5.5" ;   } elseif ( strpos ( $user_OSagent , "MSIE 5.0" )) {   $visitor_browser = "MSIE 5.0" ;   } elseif ( strpos ( $user_OSagent , "MSIE 4.01" )) {   $visitor_browser = "MSIE 4.01" ;   } elseif ( strpos ( $user_OSagent , "MSIE" )) {   $visitor_browser = "MSIE 较高版本" ;   } elseif ( strpos ( $user_OSagent , "NetCaptor" )) {   $visitor_browser = "NetCaptor" ;   } elseif ( strpos ( $user_OSagent , "Netscape" )) {   $visitor_browser = "Netscape" ;   } elseif ( strpos ( $user_OSagent , "Chrome" )) {   $visitor_browser = "Chrome" ;   } elseif ( strpos ( $user_OSagent , "Lynx" )) {   $visitor_browser = "Lynx" ;   } elseif ( strpos ( $user_OSagent , "Opera" )) {   $visitor_browser = "Opera" ;   } elseif ( strpos ( $user_OSagent , "Konqueror" )) {   $visitor_browser = "Konqueror" ;   } elseif ( strpos ( $user_OSagent , "Mozilla/5.0" )) {   $visitor_browser = "Mozilla" ;   } elseif ( strpos ( $user_OSagent , "Firefox" )) {   $visitor_browser = "Firefox" ;   } elseif ( strpos ( $user_OSagent , "U" )) {   $visitor_browser = "Firefox" ;   } else {   $visitor_browser = "其它" ;   }   return $visitor_browser ; }

方法二

下面这个是php通过正则匹配的,理论上效率不如上面的方法一, 大家可以根据需要使用。

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 private function getBrowser(){          $flag = $_SERVER [ 'HTTP_USER_AGENT' ];          $para = array ();                   // 检查操作系统          if (preg_match( '/Windows[\d\. \w]*/' , $flag , $match )) $para [ 'os' ]= $match [0];                   if (preg_match( '/Chrome\/[\d\.\w]*/' , $flag , $match )){              // 检查Chrome              $para [ 'browser' ]= $match [0];          } elseif (preg_match( '/Safari\/[\d\.\w]*/' , $flag , $match )){              // 检查Safari              $para [ 'browser' ]= $match [0];          } elseif (preg_match( '/MSIE [\d\.\w]*/' , $flag , $match )){              // IE              $para [ 'browser' ]= $match [0];          } elseif (preg_match( '/Opera\/[\d\.\w]*/' , $flag , $match )){              // opera              $para [ 'browser' ]= $match [0];          } elseif (preg_match( '/Firefox\/[\d\.\w]*/' , $flag , $match )){              // Firefox              $para [ 'browser' ]= $match [0];          } elseif (preg_match( '/OmniWeb\/(v*)([^\s|;]+)/i' , $flag , $match )){              //OmniWeb              $para [ 'browser' ]= $match [2];          } elseif (preg_match( '/Netscape([\d]*)\/([^\s]+)/i' , $flag , $match )){              //Netscape              $para [ 'browser' ]= $match [2];          } elseif (preg_match( '/Lynx\/([^\s]+)/i' , $flag , $match )){              //Lynx              $para [ 'browser' ]= $match [1];          } elseif (preg_match( '/360SE/i' , $flag , $match )){              //360SE              $para [ 'browser' ]= '360安全浏览器' ;          } elseif (preg_match( '/SE 2.x/i' , $flag , $match )) {              //搜狗              $para [ 'browser' ]= '搜狗浏览器' ;          } else {              $para [ 'browser' ]= 'unkown' ;          }          return $para ;      }

保存$para即可

php判断浏览器是不是IE

1、$_SERVER['HTTP_USER_AGENT']和strpos

2、打印结果

谷歌:
 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.86 Safari/537.36"
 
火狐:
 "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0"
 
IE:
"Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"  

3、php控制器中

网上说用判断ua中是否有MSIE,然而并没有,用Triden判断也可以的。

?
1 2 3 4 public function isIE() {    $isIE = strpos ( $_SERVER [ 'HTTP_USER_AGENT' ], "Triden" );    return $isIE ; }

总结

以上所述是小编给大家介绍的PHP判断当前使用的是什么浏览器(推荐),希望对大家有所帮助!

原文链接:https://www.cnblogs.com/mrlime/archive/2019/10/27/11746787.html

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容