欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-05-03 16:38:05
php简单判断当前使用的是什么浏览器,判断浏览器类型的方法,方便统计网站访问用户使用浏览器的比例。 判断浏览器类型方法一 function userbrowser()...

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判断当前使用的是什么浏览器(推荐),希望对大家有所帮助!