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; }
总结
以上所述是小编给大家介绍的PHP判断当前使用的是什么浏览器(推荐),希望对大家有所帮助!
大家好,我是Ayingzz,欢迎来到算法的世界。在这,逻辑是香甜的草莓果酱,代码化...
导言 经过第一章的快速入门学习,你已经知道了XML是一种能够让你自己创造标识的...
在这一部分内容中,我们来讨论ASP.NET Core中的一个新功能:环境变量和启动设置...
查询语言的改进是JDO2.0规范中的重要环节,本文从较高的层面阐述JDO2.0所提供的...
很多可能在转摘过程中失真或未经验证就被转摘,真正使用时却不行,也由此决定自...
按照Adobe方面正式公告,Flash Player已经在Windows 10上停止工作。 微软方面已...
本文实例讲述了asp.net利用反射实现给model类赋值的方法。分享给大家供大家参考...
linux安装nginx 1.安装nginx依赖的环境 2.下载nginx 3.安装nginx 4.设置防火墙开...
java 正则表达式高级篇,介绍四种常用的处理方式:匹配、分割、替代、获取,具体...
Docker Docker 五、Docker镜像讲解 1.镜像是什么 2.Docker镜像加载原理 3.分层理...