PHP解析HTTP_USER_AGENT 获取客户端浏览器以及版本号
各大经典浏览器HTTP_USER_AGENT详细
IE 各个版本典型的userAgent如下:
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2)
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)
其中,版本号是MSIE之后的数字。
Firefox 几个版本的userAgent大致如下:
Mozilla/5.0 (Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3
Mozilla/5.0 (Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12 其中,版本号是Firefox之后的数字。
Opera 典型的userAgent如下:
Opera/9.27 (Windows NT 5.2; U; zh-cn)
Opera/8.0 (Macintosh; PPC Mac OS X; U; en)
Mozilla/5.0 (Macintosh; PPC Mac OS X; U; en) Opera 8.0
其中,版本号是靠近Opera的数字。
Safari 典型的userAgent如下:
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Version/3.1 Safari/525.13
Mozilla/5.0 (iPhone; U; CPU like Mac OS X) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/4A93 Safari/419.3
其版本号是Version之后的数字。
Chrome 的userAgent是:
Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13
其中,版本号在Chrome之后的数字。
Navigator 的userAgent是:
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.12) Gecko/20080219 Firefox/2.0.0.12 Navigator/9.0.0.6
其中,版本号在Navigator之后的数字。
/**
* 获取客户端浏览器以及版本号
* @param $agent //$_SERVER['HTTP_USER_AGENT']
* @return array[browser] 浏览器名称
* @return array[browser_ver] 浏览器版本号
*/
function getClientBrowser($agent = '') {
$browser = '';
$browser_ver = '';
if (preg_match('/OmniWeb\/(v*)([^\s|;]+)/i', $agent, $regs)) {
$browser = 'OmniWeb';
$browser_ver = $regs[2];
}
if (preg_match('/Netscape([\d]*)\/([^\s]+)/i', $agent, $regs)) {
$browser = 'Netscape';
$browser_ver = $regs[2];
}
if (preg_match('/safari\/([^\s]+)/i', $agent, $regs)) {
$browser = 'Safari';
$browser_ver = $regs[1];
}
if (preg_match('/MSIE\s([^\s|;]+)/i', $agent, $regs)) {
$browser = 'Internet Explorer';
$browser_ver = $regs[1];
}
if (preg_match('/Opera[\s|\/]([^\s]+)/i', $agent, $regs)) {
$browser = 'Opera';
$browser_ver = $regs[1];
}
if (preg_match('/NetCaptor\s([^\s|;]+)/i', $agent, $regs)) {
$browser = '(Internet Explorer '.$browser_ver.') NetCaptor';
$browser_ver = $regs[1];
}
if (preg_match('/Maxthon/i', $agent, $regs)) {
$browser = '(Internet Explorer '.$browser_ver.') Maxthon';
$browser_ver = '';
}
if (preg_match('/360SE/i', $agent, $regs)) {
$browser = '(Internet Explorer '.$browser_ver.') 360SE';
$browser_ver = '';
}
if (preg_match('/SE 2.x/i', $agent, $regs)) {
$browser = '(Internet Explorer '.$browser_ver.') 搜狗';
$browser_ver = '';
}
if (preg_match('/FireFox\/([^\s]+)/i', $agent, $regs)) {
$browser = 'FireFox';
$browser_ver = $regs[1];
}
if (preg_match('/Lynx\/([^\s]+)/i', $agent, $regs)) {
$browser = 'Lynx';
$browser_ver = $regs[1];
}
if (preg_match('/Chrome\/([^\s]+)/i', $agent, $regs)) {
$browser = 'Chrome';
$browser_ver = $regs[1];
}
if (preg_match('/MicroMessenger\/([^\s]+)/i', $agent, $regs)) {
$browser = '微信浏览器';
$browser_ver = $regs[1];
}
if ($browser != '') {
return ['browser'=>$browser, 'browser_ver'=>$browser_ver];
} else {
return ['browser'=>'未知','browser_ver'=> ''];
}
}
PHP解析HTTP_USER_AGENT 获取客户端浏览器以及版本号相关推荐
- php 获取agent,PHP解析HTTP_USER_AGENT 获取客户端浏览器以及版本号 | 八戒哥技术博客...
各大经典浏览器HTTP_USER_AGENT详细 IE 各个版本典型的userAgent如下: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0) M ...
- (四)PHP解析HTTP_USER_AGENT 获取客户端手机型号
/*** 获取客户端手机型号* @param $agent //$_SERVER['HTTP_USER_AGENT']* @return array[mobile_brand] 手机品牌* @retu ...
- php 获取agent,PHP代码 解析HTTP_USER_AGENT 获取客户端操作系统
** * 获取客户端操作系统信息包括win10 * @param null * @author Jea杨 * @return string */ function GetOS(){ $agent ...
- PHP解析HTTP_USER_AGENT 获取客户端手机型号
/** * 获取客户端手机型号 * @param $agent //$_SERVER['HTTP_USER_AGENT'] * @return array[mobile_brand] ...
- java如何获取客户端浏览器的语言设置信息呢?
转自: java如何获取客户端浏览器的语言设置信息呢? 客户端简介: 客户端(Client)或称为用户端,是指与服务器相对应,为客户提供本地服务的程序.除了一些只在本地运行的应用程序之外,一般安装在普 ...
- 获取客户端浏览器信息
alert("appVersion 获取浏览器运行的平台和版本."+myNavigator.appVersion); alert("appCodeName 获取浏 ...
- PHP获取客户端设备名,PHP Laravel:如何获取客户端浏览器/设备?
我正在构建一个laravel应用程序,我想跟踪客户端浏览器的详细信息,例如浏览器名称. 我如何使用Laravel做到这一点? public function postUser(Request $req ...
- PHP获取客户端操作系统,游览器类型及版本号
2019独角兽企业重金招聘Python工程师标准>>> <?php /*** 客户端工具类** For example:** clientUtil::getBrowser($_ ...
- PHP获取客户端设备类型,浏览器版本型号,IP地址,具体地理位置信息
客户端设备类型(Windows.Mac.ihpone.Android.Linux等) //客户端设备类型(Windows.Mac.ihpone.Android.Linux等)function getC ...
最新文章
- oracle 10g 连接语句,Oracle 10g数据库基础之基本查询语句-下-连接子查询
- 批处理ffmpeg将avi视频格式转换成mp4文件同时生成m3u8文件
- MySQl笔记7:MySQL在线模拟平台汇总
- 微软自带iscsi客户端对iqn的要求
- 2019.7.16考试总结
- 关于map对key自定义排序
- birt脚本for循环语句_如何使用 for 循环语句嵌套方法!
- 开源硬件 专利_标准和开源:为什么专利待遇不同?
- OPPO F11 Pro渲染图曝光:升降式前置摄像头设计
- Swift 5新特性详解:ABI 稳定终于来了!
- 开源代码是下一轮攻击潮的重灾区
- Django实现微信消息推送
- php变成基础答案,高校邦《PHP语言程序设计》答案教程2020优学院《读写教程(基础篇) —— 成功之路大学英语综合教...
- php自动发卡程序8.0_vfkphp
- 3Dmax2010 的 安装与激活
- Kenneth Lane Thompson
- 新手入门:如何用Laya开发微信小游戏?
- 单链表实现增删改查(含头结点)
- 【map】高德地图点聚合—按索引聚合
- ASP医院管理系统—病历管理系统的设计与实现
热门文章
- C# CheckedListBox控件的用法 .
- Packet Tracer - 使用 Traceroute 发现网络
- 网络上各家分享CAD图纸如何分辨好坏呢?
- 云服务器文件导入,将电脑上的文件导入云服务器
- MapGuide的系统架构
- 呀,葵花宝典![IT项目经理成长晋升记2]
- 记忆圆周率前二十位(耳机向)
- 学硕 申请清华计算机博士,2017年清华大学申请考核制考博成功经验谈
- 【无标题】https://e-cloudstore.com/ec/api/applist/index.html#/
- [1.24] T3-人品问题