PHP判断当前使用的是什么浏览器(推荐)
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.作者投稿可能会经我们编辑修改或补充。