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

总结

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