php通过$_SERVER['HTTP_USER_AGENT']获取浏览器相关参数
最近不忙,同事在忙一个app项目。当听到领导安排让他做一个判断苹果还是安卓手机,如果是安卓手机下载安卓app。如果是苹果手机下载苹果app;然后我就上网搜了一下学习学习;
php通过$_SERVER['HTTP_USER_AGENT']可以获取浏览器很多相关的参数;
//获取浏览器
function getBrowse()
{
global $_SERVER;
$Agent = $_SERVER['HTTP_USER_AGENT'];
$browseinfo='';
if(ereg('Mozilla', $Agent) && !ereg('MSIE', $Agent)){
$browseinfo = 'Netscape Navigator';
}
if(ereg('Opera', $Agent)) {
$browseinfo = 'Opera';
}
if(ereg('Mozilla', $Agent) && ereg('MSIE', $Agent)){
$browseinfo = 'Internet Explorer';
}
if(ereg('Chrome', $Agent)){
$browseinfo="Chrome";
}
if(ereg('Safari', $Agent)){
$browseinfo="Safari";
}
if(ereg('Firefox', $Agent)){
$browseinfo="Firefox";
}
return $browseinfo;
}
//获取ip
function getIP ()
{
global $_SERVER;
if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
} else if (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
} else if (getenv('REMOTE_ADDR')) {
$ip = getenv('REMOTE_ADDR');
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
//获取用户系统
function getOS ()
{
global $_SERVER;
$agent = $_SERVER['HTTP_USER_AGENT'];
$os = false;
if (eregi('win', $agent) && strpos($agent, '95')){
$os = 'Windows 95';
}elseif (eregi('win 9x', $agent) && strpos($agent, '4.90')){
$os = 'Windows ME';
}elseif (eregi('win', $agent) && ereg('98', $agent)){
$os = 'Windows 98';
}elseif (eregi('win', $agent) && eregi('nt 5.1', $agent)){
$os = 'Windows XP';
}elseif (eregi('win', $agent) && eregi('nt 5.2', $agent)){
$os = 'Windows 2003';
}elseif (eregi('win', $agent) && eregi('nt 5', $agent)){
$os = 'Windows 2000';
}elseif (eregi('win', $agent) && eregi('nt', $agent)){
$os = 'Windows NT';
}elseif (eregi('win', $agent) && ereg('32', $agent)){
$os = 'Windows 32';
}elseif (eregi('linux', $agent)){
$os = 'Linux';
}elseif (eregi('unix', $agent)){
$os = 'Unix';
}elseif (eregi('sun', $agent) && eregi('os', $agent)){
$os = 'SunOS';
}elseif (eregi('ibm', $agent) && eregi('os', $agent)){
$os = 'IBM OS/2';
}elseif (eregi('Mac', $agent) && eregi('PC', $agent)){
$os = 'Macintosh';
}elseif (eregi('PowerPC', $agent)){
$os = 'PowerPC';
}elseif (eregi('AIX', $agent)){
$os = 'AIX';
}elseif (eregi('HPUX', $agent)){
$os = 'HPUX';
}elseif (eregi('NetBSD', $agent)){
$os = 'NetBSD';
}elseif (eregi('BSD', $agent)){
$os = 'BSD';
}elseif (ereg('OSF1', $agent)){
$os = 'OSF1';
}elseif (ereg('IRIX', $agent)){
$os = 'IRIX';
}elseif (eregi('FreeBSD', $agent)){
$os = 'FreeBSD';
}elseif (eregi('teleport', $agent)){
$os = 'teleport';
}elseif (eregi('flashget', $agent)){
$os = 'flashget';
}elseif (eregi('webzip', $agent)){
$os = 'webzip';
}elseif (eregi('offline', $agent)){
$os = 'offline';
}else{
$os = 'Unknown';
}
return $os;
}
php通过$_SERVER['HTTP_USER_AGENT']获取浏览器相关参数的更多相关文章
- php通过$_SERVER['HTTP_USER_AGENT']获取浏览器useAgent
php通过$_SERVER['HTTP_USER_AGENT']获取浏览器useAgent
- Asp获取网址相关参数大全
Asp获取网址相关参数大全 代码一:[获取地址中的文件名,不包含扩展名]<%dim Url,FileName,File Url=split(request.servervariables(& ...
- 获取浏览器url参数
//获取浏览器url参数 var methods ={ getQueryString: function (name) { var reg = new RegExp('(^|&)' + nam ...
- vue获取浏览器地址栏参数(?及/)路由+非路由实现方式
1.? 参数 浏览器参数形式:http://javam4.com/m4detail?id=1322914793170014208 1.1.路由取参方式 this.$route.query.id 前端跳 ...
- jquery获取浏览器URL参数
getRequestParams:function(param){ var reg = new RegExp("(^|&)" + param + "=([^&am ...
- 【转】javascript浏览器参数的操作,js获取浏览器参数
原文地址:http://www.haorooms.com/post/js_url_canshu html5修改浏览器地址:http://www.cnblogs.com/JiangXiaoTian/ar ...
- 判断浏览器的类型$_SERVER['HTTP_USER_AGENT']和语言$_SERVER['HTTP_ACCEPT_LANGUAGE']
判断浏览器类型: $_SERVER["HTTP_USER_AGENT"] 判断浏览器类型的具体程序如下: <?php if(strpos($_SERVER["HTT ...
- 获取浏览器中url的参数
例如: 浏览器的地址是:http://localhost:8080/src/views/moneyDetail?id=10 vue 获取浏览器的参数 获取id的参数:this.$route.query ...
- jqure 获取地址栏的参数
从一个页面跳转到另外一个页面传参,我们用jqure得到参数需要两部分: 处理浏览器地址栏参数的方法: function GetQueryString(name) { var reg = new Reg ...
随机推荐
- 【bug】【yii】配置log时,报错 Setting read-only property: yii\web\Application::log
Setting read-only property: yii\web\Application::log 配置放在了 components 外面,应该放在里面
- 关于debug
2019-04-05 11:18:15 1. debug 需巧用两个工具 1.1 用‘#’把感觉会出错的代码段注释掉 多行注释有两种快捷操作: 在需要注释的多行代码块前后加一组三引号''' 选中代 ...
- ICSharpCode.SharpZipLib.dll
using ICSharpCode.SharpZipLib.Checksums; using ICSharpCode.SharpZipLib.Zip; namespace { /// <summ ...
- win10桌面显示我的电脑
1.桌面单击右键菜单栏,选中单击个性化 2.选择主题->桌面图标设置 3.勾选需要显示或不显示的图标
- Green Space【绿色空间】
Green Space Living in an urban area with green spaces has a long-lasting positive impact on people's ...
- Codeforces Round #462 (Div. 2) A Compatible Pair
A. A Compatible Pair time limit per test1 second memory limit per test256 megabytes Problem Descript ...
- app分享代码
友推是一款是面向移动应用的SDK分享组件,提供给开发者集成使用.通过友推,开发者可以轻松集成社会化分享功能,同时创建及管理推荐好友使用您应用的推荐奖励活动,用户推荐好友安装使用您的应用即可获得推荐奖励 ...
- C# 序列化和反序列化 详解
什么是序列化以及如何实现序列化? 如何将对象数据写入 XML 文件? 如何从 XML 文件读取对象数据? 什么是序列化以及如何实现序列化? 序列化是通过将对象转换为字节流,从而存储对象或将对象传输到内 ...
- sqlserver 获取一个月有多少天
--思路:给定日期的下一个月的1号减去1天,然后取datepart(DAY,dt) declare @dt varchar(10)select @dt='2013-11-20'select datep ...
- ssh公钥私钥
ssh配置文件vi /etc/ssh/sshd_config putty下载http://www.chiark.greenend.org.uk/~sgtatham/putty/download.htm ...