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语法(3)
Oct 09 PHP
《APMServ 5.1.2》使用图解
Oct 23 PHP
PHP定时执行计划任务的多种方法小结
Dec 19 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
Oct 16 PHP
使用配置类定义Codeigniter全局变量
Jun 12 PHP
PHP计算一年多少个星期和每周的开始和结束日期
Jul 01 PHP
PHP编程中的常见漏洞和代码实例
Aug 06 PHP
Linux下安装PHP MSSQL扩展教程
Oct 24 PHP
php简单smarty入门程序实例
Jun 11 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
Mar 06 PHP
利用PHP抓取百度阅读的方法示例
Dec 18 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
Feb 06 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
php下封装较好的数字分页方法
2010/11/23 PHP
深入解析fsockopen与pfsockopen的区别
2013/07/05 PHP
php中current、next与reset函数用法实例
2014/11/17 PHP
php+flash+jQuery多图片上传源码分享
2020/07/27 PHP
jquery不支持toggle()高(新)版本的问题解决
2016/09/24 PHP
PHP生成唯一ID之SnowFlake算法
2016/12/17 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
2017/05/20 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
在jQuery 1.5中使用deferred对象的代码(翻译)
2011/03/10 Javascript
JQuery页面地址处理插件jqURL详解
2015/05/03 Javascript
DEDECMS如何为文章添加HOT NEW标志图片
2015/08/14 Javascript
Javascript简单实现面向对象编程继承实例代码
2015/11/27 Javascript
对称加密与非对称加密优缺点详解
2017/02/06 Javascript
js实现文字跑马灯效果
2017/02/23 Javascript
JS控件bootstrap datepicker使用方法详解
2017/03/25 Javascript
Javascript中 toFixed四舍六入方法
2017/08/21 Javascript
Vue 3.x+axios跨域方案的踩坑指南
2019/07/04 Javascript
如何在现代JavaScript中编写异步任务
2021/01/31 Javascript
Python利用Beautiful Soup模块修改内容方法示例
2017/03/27 Python
详解Python中的正则表达式
2018/07/08 Python
使用Python更换外网IP的方法
2018/07/09 Python
浅谈Python脚本开头及导包注释自动添加方法
2018/10/27 Python
pytorch 可视化feature map的示例代码
2019/08/20 Python
俄罗斯最大的在线珠宝大卖场:Nebo
2019/12/08 全球购物
将"引用"作为函数参数有哪些特点
2013/04/05 面试题
学年自我鉴定
2014/01/16 职场文书
运动会四百米广播稿
2014/01/19 职场文书
高三政治教学反思
2014/02/06 职场文书
幼儿园元旦家长感言
2014/02/27 职场文书
八一建军节慰问信
2015/02/14 职场文书
2016年大学自主招生自荐信范文
2015/03/24 职场文书
幼儿园食品安全责任书
2015/05/08 职场文书
社区党建工作总结2015
2015/05/13 职场文书
pytorch 如何使用float64训练
2021/05/24 Python
Netflix《海贼王》真人版剧集多张片场照曝光
2022/04/04 日漫
Spring Boot 实现 WebSocket
2022/04/30 Java/Android