我尝试使用User Agent类,但在IE11中,它显示了Mozilla 5.0。
$this->agent->browser().' '.$this->agent->version();
我尝试过使用PHP的get_browser()并显示正确的信息,' IE 11.0 for Desktop'但它会大大减慢加载速度。
$browser = get_browser(null, false);
答案 0 :(得分:3)
您使用的是哪个版本的CodeIgniter?我刚刚在我的环境中测试了以下内容(CodeIgniter 3.0.6),并得到了正确的响应。
<强>控制器:强>
$this->load->helper('url');
$this->load->library('user_agent');
$data['browser'] = $this->agent->browser();
$data['browserVersion'] = $this->agent->version();
$data['platform'] = $this->agent->platform();
$data['full_user_agent_string'] = $_SERVER['HTTP_USER_AGENT'];
查看:强>
<?php
echo $browser . '<br />';
echo $browserVersion . '<br />';
echo $platform . '<br />';
echo $full_user_agent_string . '<br />';
?>
<强>输出:强>
Internet Explorer
7.0
Windows 7
Mozilla / 4.0(兼容; MSIE 7.0; Windows NT 6.1; WOW64; 三叉戟/ 7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.3; OWASMIME / 4.0500)
是的,我在兼容模式下进行了测试(这就是为什么你会看到MSIE 7.0引用的原因)。我实际上尝试了开发工具中列出的所有版本,并且似乎适用于所有版本。
出于某种原因,您可能会看到完整用户代理字符串的一部分。该字符串以Mozilla / 5.0开头。这并不意味着它实际上是Mozilla。 Here is some more history on why you see Mozilla/5.0 in the user agent string