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

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

判断浏览器类型方法一

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通过正则匹配的,理论上效率不如上面的方法一, 大家可以根据需要使用。

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判断也可以的。

public function isIE() {  $isIE = strpos($_SERVER['HTTP_USER_AGENT'],"Triden");  return $isIE; }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值