2017 © Pedro Peláez
 

library udger-php

PHP agent string parser based on Udger https://udger.com/products/local_parser

image

udger/udger-php

PHP agent string parser based on Udger https://udger.com/products/local_parser

  • Sunday, June 17, 2018
  • by mallat
  • Repository
  • 6 Watchers
  • 11 Stars
  • 6,480 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 7 Forks
  • 1 Open issues
  • 11 Versions
  • 28 % Grown

The README.md

Udger client for PHP (data ver. 3)

Local parser is very fast and accurate useragent string detection solution. Enables developers to locally install and integrate a highly-scalable product. We provide the detection of the devices (personal computer, tablet, Smart TV, Game console etc.), operating system, client SW type (browser, e-mail client etc.) and devices market name (example: Sony Xperia Tablet S, Nokia Lumia 820 etc.). It also provides information about IP addresses (Public proxies, VPN services, Tor exit nodes, Fake crawlers, Web scrapers, Datacenter name .. etc.), (*1)

  • Tested with more the 50.000 unique user agents.
  • Up to date data provided by https://udger.com/

Requirements

  • php >= 5.5.0
  • ext-sqlite3 (http://php.net/manual/en/book.sqlite3.php)
  • datafile v3 (udgerdb_v3.dat) from https://data.udger.com/

Features

  • Fast
  • LRU cache
  • Released under the MIT

Install

composer require udger/udger-php

Usage

You should review the included examples (parse.php, account.php), (*2)

Here's a quick example:, (*3)

require_once dirname(__DIR__) . '/vendor/autoload.php';
$factory = new Udger\ParserFactory();
$parser = $factory->getParser();
$parser->setDataFile(sys_get_temp_dir() . "/udgercache/udgerdb_v3.dat");
//$parser->setCacheEnable(false);
//$parser->setCacheSize(4000);     
$parser->setUA('Mozilla/5.0 (Linux; Android 5.1.1; SAMSUNG SM-A510F Build/LMY47X) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/3.5 Chrome/38.0.2125.102 Mobile Safari/537.36');
$parser->setIP("2A02:598:7000:116:0:0:0:101");
$ret = $parser->parse();
echo "

";
print_r($ret);
echo "
"; Array ( [user_agent] => Array ( [ua_string] => Mozilla/5.0 (Linux; Android 5.1.1; SAMSUNG SM-A510F Build/LMY47X) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/3.5 Chrome/38.0.2125.102 Mobile Safari/537.36 [ua_class] => Mobile browser [ua_class_code] => mobile_browser [ua] => Mobile Samsung Browser 3.5 [ua_version] => 3.5 [ua_version_major] => 3 [ua_uptodate_current_version] => [ua_family] => Mobile Samsung Browser [ua_family_code] => mobile_samsung_browser [ua_family_homepage] => http://developer.samsung.com/internet [ua_family_vendor] => SAMSUNG [ua_family_vendor_code] => samsung [ua_family_vendor_homepage] => http://www.samsung.com/ [ua_family_icon] => samsung_browser.png [ua_family_icon_big] => samsung_browser_big.png [ua_family_info_url] => https://udger.com/resources/ua-list/browser-detail?browser=Mobile Samsung Browser [ua_engine] => WebKit/Blink [os] => Android 5.1 lollipop [os_code] => android_5_1 [os_homepage] => https://en.wikipedia.org/wiki/Android_Lollipop [os_icon] => android.png [os_icon_big] => android_big.png [os_info_url] => https://udger.com/resources/ua-list/os-detail?os=Android 5.1 lollipop [os_family] => Android [os_family_code] => android [os_family_vendor] => Google, Inc. [os_family_vendor_code] => google_inc [os_family_vendor_homepage] => https://www.google.com/about/company/ [device_class] => Smartphone [device_class_code] => smartphone [device_class_icon] => phone.png [device_class_icon_big] => phone_big.png [device_class_info_url] => https://udger.com/resources/ua-list/device-detail?device=Smartphone [device_marketname] => Galaxy A5 (2016) [device_vendor] => Samsung [device_vendor_code] => samsung [device_vendor_homepage] => http://www.samsung.com/ [device_vendor_icon] => samsung.png [crawler_last_seen] => [crawler_category] => [crawler_category_code] => [crawler_respect_robotstxt] => ) [ip_address] => Array ( [ip] => 2A02:598:7000:116:0:0:0:101 [ip_ver] => 6 [ip_classification] => Crawler [ip_classification_code] => crawler [ip_hostname] => [ip_last_seen] => 2016-02-12 04:28:56 [ip_country] => Czech Republic [ip_country_code] => CZ [ip_city] => Prague [crawler_name] => SeznamBot/3.2-test1 [crawler_ver] => 3.2-test1 [crawler_ver_major] => 3 [crawler_family] => SeznamBot [crawler_family_code] => seznambot [crawler_family_homepage] => http://napoveda.seznam.cz/cz/seznambot.html [crawler_family_vendor] => Seznam.cz, a.s. [crawler_family_vendor_code] => seznam-cz_as [crawler_family_vendor_homepage] => http://www.seznam.cz/ [crawler_family_icon] => seznam.png [crawler_family_info_url] => https://udger.com/resources/ua-list/bot-detail?bot=SeznamBot#id12590 [crawler_last_seen] => 2016-02-15 06:12:28 [crawler_category] => Search engine bot [crawler_category_code] => search_engine_bot [crawler_respect_robotstxt] => unknown [datacenter_name] => [datacenter_name_code] => [datacenter_homepage] => ) )

Running tests

./vendor/bin/codecept run

Automatic updates download

  • for autoupdate data use Udger data updater (https://udger.com/support/documentation/?doc=62)

Documentation for programmers

  • https://udger.com/pub/documentation/parser/PHP/html/

Author

  • The Udger.com Team (info@udger.com)

old v2 format

If you still use the previous format of the db (v2), please see the branch old_format_v2, (*4)

The Versions

17/06 2018

dev-master

9999999-dev

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

MIT GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

05/03 2018

3.1.3

3.1.3.0

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

MIT

The Requires

 

The Development Requires

by The Udger.com Team

03/05 2017

v3.1.2

3.1.2.0

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

05/04 2017

v3.1.1

3.1.1.0

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

04/01 2017

dev-dev

dev-dev

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

04/01 2017

v3.1.0

3.1.0.0

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

16/07 2016

v3.0.0

3.0.0.0

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

12/07 2016

dev-old_format_v2

dev-old_format_v2

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

 

The Development Requires

by The Udger.com Team

17/02 2016

v1.4.1

1.4.1.0

PHP agent string parser based on Udger https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

  • php >=5.3.0
  • ext-sqlite3 *

 

The Development Requires

by The Udger.com Team

28/01 2016

v1.4.0

1.4.0.0

PHP client for https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

The Requires

  • php >=5.3.0
  • ext-sqlite3 *

 

The Development Requires

by The Udger.com Team

22/01 2016

v1.3.0

1.3.0.0

PHP client for https://udger.com/products/local_parser

  Sources   Download

GNU (LGPL v.3)

by The Udger.com Team