用php怎样判断浏览器?教你两个办法
Admin 2021-05-28 群英技术资讯 968 次浏览
我们知道浏览器有很多,不同人的使用习惯不同,因此我们需要的统计网站访问用户使用浏览器的比例,这样有助我们更好的做好网站。那么要如何判断浏览器类型呢?下面给大家分享几个基于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相关内容,大家可以关注其他文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
首先,为什么会存在循环?代码为什么要用循环?在我们的日常使用中,会遇到需要反复运行同一代码块。我们可以使用循环来执行这样的任务,而不是添加若干几乎相等的代码行,显得臃肿。
对于PHP设计模式中的中介者模式,一些新手可能不是很理解,对此这篇文章就给大家详细介绍一下关于中介者模式原理、使用等相关内容,有学习需要的朋友可以参考。
这篇文章主要为大家介绍了如何利用PHP实现三种不同的抽奖算法:随机抽奖、概率抽奖和内定抽奖,文中的示例代码讲解详细,感兴趣的可以了解一下
用于生产环境中的PHP需要对其进行优化,让PHP自身发挥更好的性能,除了写好PHP代码,还要配置好php-fpm以及php.ini调优。本文从内存、OPcache、上传、会话以及安全等方面讲解php.ini的配置调优。
php如何对图片压缩处理?我们在开发时,有些需求需要对图片进行压缩处理,例如展示过大图片时,直接展示那么速度就会很慢,因此需要压缩图片。因此,这篇文章就给大家介绍一下php压缩图片的方法。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008