时间:2021-07-01 10:21:17 帮助过:41人阅读
偶然间搜索用php截取ua中的浏览器及操作系统信息,发现比较麻烦于是自己写了一个
Php代码
$user_agent = $_SERVER['HTTP_USER_AGENT']; // 先取得UA // echo $user_agent; const REG_ALL = '/(Opera|OPR|Firefox|Chrome|Safari|MSIE|Navigator).(\d{1,3}\.\d{0,2})/i'; // 此处可以加入想要捕获的浏览器标识 preg_match(REG_ALL, $user_agent, $matches); // 这里查下PHP文档 /** 大致返回结果像这样 array (size=3) 0 => string 'Firefox/39.0' (length=12) 1 => string 'Firefox' (length=7) 2 => string '39.0' (length=4) */ const REG_OS = '/(Windows NT|Win |Linux|Unix|Sun|Mac).(\d{1,3}\.\d{0,2})/i'; // 这里仅做了测试项目 preg_match(REG_OS, $user_agent, $matches); // 操作系统如是乎 /* 返回值类似这样似的,自己再做解析,6.1:Win7 5.1:XP 什么的 array (size=3) 0 => string 'Windows NT 6.1' (length=14) 1 => string 'Windows NT' (length=10) 2 => string '6.1' (length=3) */ die();
如此这般就好了,大部分浏览器都可以匹配,操作系统复杂些,不过一般windows环境下也够用。