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


Posted in PHP onOctober 27, 2019

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; 
}

总结

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

PHP 相关文章推荐
PHP个人网站架设连环讲(二)
Oct 09 PHP
php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
Nov 27 PHP
php入门学习知识点三 PHP上传
Jul 14 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
Jun 05 PHP
php查询mysql数据库并将结果保存到数组的方法
Mar 18 PHP
php实现Mysql简易操作类
Oct 11 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
Mar 21 PHP
PHP中字符与字节的区别及字符串与字节转换示例
Oct 15 PHP
PHP读取zip文件的方法示例
Nov 17 PHP
PHP实现中国公民身份证号码有效性验证示例代码
May 03 PHP
详解thinkphp5+swoole实现异步邮件群发(SMTP方式)
Oct 13 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 PHP
php+layui数据表格实现数据分页渲染代码
Oct 26 #PHP
layui数据表格自定义每页条数limit设置
Oct 26 #PHP
在 Laravel 中动态隐藏 API 字段的方法
Oct 25 #PHP
Laravel 实现添加多语言提示信息
Oct 25 #PHP
Laravel5.5 动态切换多语言的操作方式
Oct 25 #PHP
解决php扩展安装不生效问题
Oct 25 #PHP
Laravel实现通过blade模板引擎渲染视图
Oct 25 #PHP
You might like
极典R601SW收音机
2021/03/02 无线电
自定义PHP分页函数
2006/10/09 PHP
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
基于PHP制作验证码
2016/10/12 PHP
PHP脚本自动识别验证码查询汽车违章
2016/12/20 PHP
使用JavaScript 实现的人脸检测
2015/03/24 Javascript
jQuery获得指定元素坐标的方法
2015/04/14 Javascript
js实现跨域的方法实例详解
2015/06/24 Javascript
IE9+已经不对document.createElement向下兼容的解决方法
2015/09/14 Javascript
跟我学习javascript的隐式强制转换
2015/11/16 Javascript
javascript对象的创建和访问
2016/03/08 Javascript
Bootstrap多级导航栏(级联导航)的实现代码
2016/03/08 Javascript
JavaScript探测CSS动画是否已经完成的方法
2016/08/30 Javascript
JS实现的3des+base64加密解密算法完整示例
2018/05/18 Javascript
JS实现带阴历的日历功能详解
2019/01/24 Javascript
js字符串处理之绝妙的代码
2019/04/05 Javascript
[51:15]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-GAMING
2014/05/22 DOTA
Python脚本处理空格的方法
2016/08/08 Python
Python下使用Scrapy爬取网页内容的实例
2018/05/21 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
解决Tensorflow安装成功,但在导入时报错的问题
2018/06/13 Python
python 堆和优先队列的使用详解
2019/03/05 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
英国和世界各地鲜花速递专家:Arena Flowers
2018/02/10 全球购物
一套C#面试题
2013/10/09 面试题
超市营业员求职简历的自我评价
2013/10/17 职场文书
创业计划书的内容步骤和要领
2014/01/04 职场文书
音乐兴趣小组活动总结
2014/07/07 职场文书
售房委托书
2014/08/30 职场文书
接待员岗位职责
2015/02/13 职场文书
职称评定个人总结
2015/03/05 职场文书
质检员岗位职责范本
2015/04/07 职场文书
责任书范本大全
2015/05/11 职场文书
Python中三种花式打印的示例详解
2022/03/19 Python
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android
Nginx如何限制IP访问只允许特定域名访问
2022/07/23 Servers