php - 如何使用 CodeIgniter 获取浏览器和平台信息?

标签 php codeigniter browser

我尝试使用用户代理类,但在 IE11 中,它显示 Mozilla 5.0。

$this->agent->browser().' '.$this->agent->version();

我试过使用 PHP 的 get_browser(),它显示了正确的信息,“IE 11.0 for Desktop”,但它显着减慢了加载速度。

$browser = get_browser(null, false);

最佳答案

您使用的是什么版本的 CodeIgniter?我刚刚在我的环境 ( CodeIgniter 3.0.6 ) 中测试了以下内容,并得到了正确的响应。

Controller :

$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 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/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 .

关于php - 如何使用 CodeIgniter 获取浏览器和平台信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37321966/

相关文章:

php - 阿拉伯语的 mysql 和 UTF8 问题

mysql - Codeigniter mysql 哪里不等于查询

php - 我想要使​​用某些条件进行排名

php - "Body Onload"发送 "ScrollHeight"在 Chrome 和 Safari 中无法正常工作

javascript - 如何在WebBrowser 控件window.external 方法中生成异常在MFC 中实现?

php - 使用 PHP 根据服务器流量重定向用户

php - MySQL - 根据用户输入动态显示月份

Codeigniter: Paypal IPN 和 csrf_protection

java - 为什么我无法通过浏览器连接到localhost 上的http 服务器?

php - 正则表达式在 PHP 中无法正常工作