编程语言
首页 > 编程语言> > php 获取浏览器/操作系统信息

php 获取浏览器/操作系统信息

作者:互联网

获取浏览器信息

function getUserBS($bs = null) {
	if (isset($_SERVER["HTTP_USER_AGENT"])) {
		$user_agent = strtolower($_SERVER["HTTP_USER_AGENT"]);
	} else {
		return null;
	}
	// 直接检测传递的值
	if ($bs) {
		if (strpos($user_agent, strtolower($bs))) {
			return true;
		}
		return false;
	}
	// 固定检测
	if (strpos($user_agent, 'micromessenger')) {
		$user_bs = 'Weixin';
	} elseif (strpos($user_agent, 'qq')) {
		$user_bs = 'QQ';
	} elseif (strpos($user_agent, 'weibo')) {
		$user_bs = 'Weibo';
	} elseif (strpos($user_agent, 'alipayclient')) {
		$user_bs = 'Alipay';
	} elseif (strpos($user_agent, 'trident/7.0')) {
		$user_bs = 'IE11';
		// 新版本IE优先,避免360等浏览器的兼容模式检测错误
	} elseif (strpos($user_agent, 'trident/6.0')) {
		$user_bs = 'IE10';
	} elseif (strpos($user_agent, 'trident/5.0')) {
		$user_bs = 'IE9';
	} elseif (strpos($user_agent, 'trident/4.0')) {
		$user_bs = 'IE8';
	} elseif (strpos($user_agent, 'msie 7.0')) {
		$user_bs = 'IE7';
	} elseif (strpos($user_agent, 'msie 6.0')) {
		$user_bs = 'IE6';
	} elseif (strpos($user_agent, 'edge')) {
		$user_bs = 'Edge';
	} elseif (strpos($user_agent, 'firefox')) {
		$user_bs = 'Firefox';
	} elseif (strpos($user_agent, 'chrome') || strpos($user_agent, 'android')) {
		$user_bs = 'Chrome';
	} elseif (strpos($user_agent, 'safari')) {
		$user_bs = 'Safari';
	} elseif (strpos($user_agent, 'mj12bot')) {
		$user_bs = 'MJ12bot';
	} else {
		$user_bs = 'Other';
	}
	return $user_bs;
}

获取操作系统信息

// 获取用户操作系统类型
function getUserOS($osstr = null) {
	if (isset($_SERVER["HTTP_USER_AGENT"])) {
		$user_agent = strtolower($_SERVER["HTTP_USER_AGENT"]);
	} else {
		return null;
	}
	// 直接检测传递的值
	if ($osstr) {
		if (strpos($user_agent, strtolower($osstr))) {
			return true;
		}
		return false;
	}
	if (strpos($user_agent, 'windows nt 5.0')) {
		$user_os = 'Windows 2000';
	} elseif (strpos($user_agent, 'windows nt 9')) {
		$user_os = 'Windows 9X';
	} elseif (strpos($user_agent, 'windows nt 5.1')) {
		$user_os = 'Windows XP';
	} elseif (strpos($user_agent, 'windows nt 5.2')) {
		$user_os = 'Windows 2003';
	} elseif (strpos($user_agent, 'windows nt 6.0')) {
		$user_os = 'Windows Vista';
	} elseif (strpos($user_agent, 'windows nt 6.1')) {
		$user_os = 'Windows 7';
	} elseif (strpos($user_agent, 'windows nt 6.2')) {
		$user_os = 'Windows 8';
	} elseif (strpos($user_agent, 'windows nt 6.3')) {
		$user_os = 'Windows 8.1';
	} elseif (strpos($user_agent, 'windows nt 10')) {
		$user_os = 'Windows 10';
	} elseif (strpos($user_agent, 'windows phone')) {
		$user_os = 'Windows Phone';
	} elseif (strpos($user_agent, 'android')) {
		$user_os = 'Android';
	} elseif (strpos($user_agent, 'iphone')) {
		$user_os = 'iPhone';
	} elseif (strpos($user_agent, 'ipad')) {
		$user_os = 'iPad';
	} elseif (strpos($user_agent, 'mac')) {
		$user_os = 'Mac';
	} elseif (strpos($user_agent, 'sunos')) {
		$user_os = 'Sun OS';
	} elseif (strpos($user_agent, 'bsd')) {
		$user_os = 'BSD';
	} elseif (strpos($user_agent, 'ubuntu')) {
		$user_os = 'Ubuntu';
	} elseif (strpos($user_agent, 'linux')) {
		$user_os = 'Linux';
	} elseif (strpos($user_agent, 'unix')) {
		$user_os = 'Unix';
	} else {
		$user_os = 'Other';
	}
	return $user_os;
}

标签:浏览器,操作系统,agent,strpos,user,bs,elseif,php,os
来源: https://www.cnblogs.com/sunr/p/16671439.html