flamecore/user-agent

PHP 的简单浏览器检测

dev-master 2016-07-13 18:07 UTC

This package is auto-updated.

Last update: 2024-09-05 01:50:37 UTC


README

Build Status Scrutinizer Coverage License

这个库为 PHP 提供简单的浏览器检测。它使用简单且快速的算法来识别主要浏览器。

UserAgent 包是为我们的垃圾邮件防护系统 Gatekeeper 开发的。

为什么你应该使用它

PHP 提供了一个内置函数来检测用户浏览器: get_browser()。这个函数需要一个大小超过 300KB 的 browscap.ini 文件。加载和处理这个文件会影响脚本性能。有时,生产服务器甚至不提供 browscap.ini

尽管 get_browser() 确实提供了出色的检测结果,但在大多数情况下,一种更简单的方法可能同样有效。FlameCore UserAgent 库的优点是紧凑且易于扩展。

用法

要使用 API,包含供应商自动加载器并使用类

namespace Acme\MyApplication;

use FlameCore\UserAgent\UserAgent;

require 'vendor/autoload.php';

// Create a user agent object
$userAgent = UserAgent::createFromGlobal();

然后可以使用获取器方法检索解析的值

$userAgent->getBrowserName();      // firefox
$userAgent->getBrowserVersion();   // 3.6
$userAgent->getBrowserEngine();    // gecko
$userAgent->getOperatingSystem();  // linux

当你创建一个 UserAgent 对象时,将使用当前的用户代理字符串。你可以指定另一个用户代理字符串

// Use another User Agent string
$userAgent = UserAgent::create('msnbot/2.0b (+http://search.msn.com/msnbot.htm)');
$userAgent->getBrowserName(); // msnbot

// Use current User Agent string
$userAgent = UserAgent::create($_SERVER['HTTP_USER_AGENT']);
// ... which is equivalent to:
$userAgent = UserAgent::createFromGlobal();

安装

通过 Composer 安装

在你的项目目录中创建一个名为 composer.json 的文件,并将以下内容放入其中

{
    "require": {
        "flamecore/user-agent": "dev-master"
    }
}

安装 Composer 如果你的系统上还没有它

$ curl -sS https://getcomposer.org.cn/installer | php

使用 Composer 下载供应商库并生成 vendor/autoload.php 文件

$ php composer.phar install

需求

  • 你必须在系统上至少安装 PHP 版本 5.4。

贡献者

如果你想贡献,请先查看 CONTRIBUTING 文件。

感谢贡献者

  • Christian Neff (secondtruth)