【问题标题】:browser name in php?php中的浏览器名称?
【发布时间】:2011-03-02 04:09:35
【问题描述】:

我们如何使用 php 脚本获取浏览器名称和版本信息?

【问题讨论】:

    标签: php browser


    【解决方案1】:
    <?php 
     echo $_SERVER['HTTP_USER_AGENT'];
     ?> 
    

    正如 Palantir 所说,另外看看 get_browser 函数,您还可以在其中检查浏览器中启用的功能。

    【讨论】:

      【解决方案2】:

      【讨论】:

      • 网站下载链接失效:(
      【解决方案3】:

      您需要创建函数将用户代理数据转换为浏览器的通用名称

      例如,$_SERVER['HTTP_USER_AGENT'] 可以返回 Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9* 是火狐 要么 Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.55 Safari/533.4 是 Chrome

      细节为您提供渲染引擎、代码库、版本、操作系统等...

      我建议使用 preg_match 和/或已知浏览器列表,您是否想做类似的事情

      echo browserCommonName($_SERVER['HTTP_USER_AGENT']); 输出“谷歌浏览器”。

      browserCommonName($userAgent) 需要已知浏览器的列表。

      编辑:刚刚注意到get_browser 嵌入php 这样做,我不阅读线程不好。

      【讨论】:

        【解决方案4】:

        get_browser()

        <?php
        echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";
        
        $browser = get_browser(null, true);
        print_r($browser);
        ?>
        

        【讨论】:

          【解决方案5】:

          总而言之,你不能。你当然可以尝试得到它,而且几乎可以肯定你得到的东西看起来和你想要的一样;但是绝对没有办法检查信息是否正确。当您收到用户代理字符串时,另一端的浏览器可能是真实的,也可能是在撒谎。与用户打交道时,始终假设它实际上是在撒谎。

          没有“最好的方法”来解决这个问题,但您最可能想要做的是使用各种浏览器测试您的网站,使用可移植的 HTML 和 CSS 技术,如果您绝对必须,请填补漏洞使用 JavaScript。

          根据您认为的浏览器选择要发送到浏览器的数据是一个坏主意™。

          【讨论】:

          • 我不同意。有时有理由针对某些浏览器,因为它们有时具有不同的功能。用户的浏览器报告它想要的任何内容,如果用户希望更改它,那么他将获得错误的内容并最终破坏功能。用户不这样做,如果他们这样做,那么他们知道他们在做什么以及期望什么。整个网络实际上是基于某种信任,用户比使用桌面软件时拥有更多的权力,它是游戏的一部分。考虑推荐人、cookies、javascript 支持等......
          • 身份!= 能力。检查功能,而不是名称。
          • +1 好答案。 PHP 应该独立于浏览器提供内容。如果您想考虑不同的浏览器功能,您可以为此使用客户端语言。即使在那里,您也不应该依赖浏览器告诉您的内容,因为@Williham Totland 正确地说您应该检查功能而不是名称。
          【解决方案6】:

          您可以随时查看 php 函数 get_browser http://php.net/manual/en/function.get-browser.php。为此,您需要$_SERVER['HTTP_USER_AGENT']

          您可能还想看看 Chris Schuld 浏览器检测类。 http://chrisschuld.com/projects/browser-php-detecting-a-users-browser-from-php.html

          【讨论】:

            猜你喜欢
            • 2017-02-05
            • 1970-01-01
            • 2014-04-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-01-03
            • 2015-03-09
            • 1970-01-01
            相关资源
            最近更新 更多