PHP环境变量: HTTP_USER_AGENT
2018-12-15 15:43
627 查看
今天小编分析一下PHP环境变量: HTTP_USER_AGENT, 它标识用户的浏览器和操作系统。
[code]$u_agent = $_SERVER['HTTP_USER_AGENT'];//标识用户的浏览器和操作系统 $bname = 'Unknown'; $platform = 'Unknown'; $version = ""; if (preg_match('/linux/i', $u_agent)) { $platform = 'linux'; }elseif (preg_match('/macintosh|mac os x/i', $u_agent)) { $platform = 'mac'; }elseif (preg_match('/windows|win32/i', $u_agent)) { $platform = 'windows'; } if(preg_match('/MSIE/i',$u_agent) && !preg_match('/Opera/i',$u_agent)) { $bname = 'Internet Explorer'; $ub = "MSIE"; } elseif(preg_match('/Firefox/i',$u_agent)) { $bname = 'Mozilla Firefox'; $ub = "Firefox"; } elseif(preg_match('/Chrome/i',$u_agent)) { $bname = 'Google Chrome'; $ub = "Chrome"; }elseif(preg_match('/Safari/i',$u_agent)) { $bname = 'Apple Safari'; $ub = "Safari"; }elseif(preg_match('/Opera/i',$u_agent)) { $bname = 'Opera'; $ub = "Opera"; }elseif(preg_match('/Netscape/i',$u_agent)) { $bname = 'Netscape'; $ub = "Netscape"; } $known = array('Version', $ub, 'other'); $pattern = '#(?<browser>' . join('|', $known) . ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#'; if (!preg_match_all($pattern, $u_agent, $matches)) { // we have no matching number just continue } $i = count($matches['browser']); if ($i != 1) { if (strripos($u_agent,"Version") < strripos($u_agent,$ub)){ $version= $matches['version'][0]; }else { $version= $matches['version'][1]; } }else { $version= $matches['version'][0]; } if ($version == null || $version == "") {$version = "?";} $arrInfo = array( 'userAgent' => $u_agent, // 'name' => $bname, //浏览器名称 'version' => $version, //版本 'platform' => $platform, //操作系统 'pattern' => $pattern, //验证规则 ); echo '<pre>';print_r($arrInfo);exit;
输出结果:
阅读更多Array ( [userAgent] => Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36 [name] => Google Chrome [version] => 62.0.3202.62 [platform] => windows [pattern] => #(?Version|Chrome|other)[/ ]+(?[0-9.|a-zA-Z.]*)# )
相关文章推荐
- 利用php中的$_SERVER['HTTP_USER_AGENT']判断来访用户是pc端还是移动端
- php $_SERVER['HTTP_USER_AGENT'] 用法介绍
- php 通过http user-agent判断是否为手机浏览器
- PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
- PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
- PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
- PHP通过HTTP_USER_AGENT判断是否为手机移动终端的函数
- 【LAMP环境搭建】限定某个目录禁止解析php、限制user_agent和php相关配置
- PHP通过HTTP_USER_AGENT判断是否为手机移动终端的函数
- php通过http_user_agent判断用户设备类型(脑残版)
- php通过$_SERVER['HTTP_USER_AGENT']获取浏览器相关参数
- php通过$_SERVER['HTTP_USER_AGENT']获取浏览器useAgent
- php通过$_SERVER['HTTP_USER_AGENT']获取浏览器相关参数(转)
- PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
- PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
- php通过$_SERVER['HTTP_USER_AGENT']获取浏览器相关参数
- Nginx http_user_agent 防御 ab 等
- PHP 服务器环境变量 $_ENV
- httpuseragent
- PHP根据User_Agent判断设备类型