2017 © Pedro Peláez

library user-agent

Simple browser detection for PHP



Simple browser detection for PHP

  • Wednesday, July 13, 2016
  • by secondtruth
  • Repository
  • 10 Watchers
  • 6 Stars
  • 2,775 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 1 Versions
  • 24 % Grown


FlameCore UserAgent

Build Status Scrutinizer Coverage License, (*1)

This library provides simple browser detection for PHP. It uses a simple and fast algorithm to recognize major browsers., (*2)

The UserAgent package was developed for our spam-protection system Gatekeeper., (*3)

Why you should use it

PHP provides a native function to detect the user browser: get_browser(). This function requires the browscap.ini file which is 300KB+ in size. Loading and processing this file impacts the script performance. And sometimes, the production server just doesn't provide browscap.ini., (*4)

Although get_browser() surely provides excellent detection results, in most cases a much simpler method can be just as effective. The FlameCore UserAgent library has the advantage of being compact and easy to extend., (*5)


To make use of the API, include the vendor autoloader and use the classes:, (*6)

namespace Acme\MyApplication;

use FlameCore\UserAgent\UserAgent;

require 'vendor/autoload.php';

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

Then the parsed values can be retrieved using the getter methods:, (*7)

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

When you create a UserAgent object, the current user agent string is used. You can specify another user agent string:, (*8)

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

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

Installation ------------ ### Install via Composer Create a file called `composer.json` in your project directory and put the following into it:

{ "require": { "flamecore/user-agent": "dev-master" } } ```, (*11)

Install Composer if you don't already have it present on your system:, (*12)

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

Use Composer to download the vendor libraries and generate the vendor/autoload.php file:, (*13)

$ php composer.phar install


  • You must have at least PHP version 5.4 installed on your system.


If you want to contribute, please see the CONTRIBUTING file first., (*14)

Thanks to the contributors:, (*15)

  • Christian Neff (secondtruth)

The Versions

13/07 2016


9999999-dev http://www.flamecore.org

Simple browser detection for PHP

  Sources   Download


The Requires

  • php >=5.4


The Development Requires

browser user agent