PHPackages                             synchro/uasparser - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. synchro/uasparser

ActiveLibrary[HTTP &amp; Networking](/categories/http)

synchro/uasparser
=================

UASparser is a PHP parser and classifier for user agent strings presented by HTTP clients using databases from http://user-agent-string.info/.

v0.54(10y ago)2016.5k↓100%9[2 issues](https://github.com/Synchro/UASparser/issues)LGPL-2.1PHPPHP &gt;=5.3.0CI failing

Since Jun 4Pushed 5y ago3 watchersCompare

[ Source](https://github.com/Synchro/UASparser)[ Packagist](https://packagist.org/packages/synchro/uasparser)[ Docs](https://github.com/Synchro/UASparser)[ RSS](/packages/synchro-uasparser/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (5)Versions (5)Used By (0)

UASparser — A User Agent String parser for PHP
==============================================

[](#uasparser--a-user-agent-string-parser-for-php)

**Important: while the code in this package is functional, it's no longer any use because the data source at user-agent-string.info (now udger.com) it relied on is no longer available.**

It may work with udger.com's commercial data sources, but that's not available to test with; I recommend you switch to a different system such as [Mobile-Detect](https://github.com/serbanghita/Mobile-Detect).

[![Build Status](https://camo.githubusercontent.com/03521e7860844288f06656092d6a4b9885b25821143b30f7d2d0b08cce290ce5/68747470733a2f2f7472617669732d63692e6f72672f53796e6368726f2f5541537061727365722e706e673f6272616e63683d6d6173746572)](https://travis-ci.org/Synchro/UASparser)[![Latest Stable Version](https://camo.githubusercontent.com/f05abd5862759facc0ac73961e9c4a7c75696ec442c25224ff42d8eb3bed0841/68747470733a2f2f706f7365722e707567782e6f72672f53796e6368726f2f5541537061727365722f762f737461626c652e706e67)](https://packagist.org/packages/Synchro/UASparser)[![Latest Unstable Version](https://camo.githubusercontent.com/29e3afeff93a7eb18bb40eb756145830150c7c2a47fb85bf1c281202ff74dd5d/68747470733a2f2f706f7365722e707567782e6f72672f53796e6368726f2f5541537061727365722f762f756e737461626c652e706e67)](https://packagist.org/packages/Synchro/UASparser)

This is a parser and classifier for user agent strings presented by HTTP clients.

This code is based on the libraries by Jaroslav Mallat available from

Licensed under the LGPL, see license.txt for details.

This version improved by [Marcus Bointon](https://github.com/Synchro):

- [Maintained on GitHub](https://github.com/Synchro/UASparser)
- [Published on packagist.org](https://packagist.org/packages/synchro/uasparser)
- "Runs" under PHP 7.3 and up.
- Uses the UAS namespace
- Reformatted code in PSR-12 style
- PSR-4 autoloading

Documentation
-------------

[](#documentation)

Release notes may be found in the [changelog](changelog.md).

Generate PHPDocs like this:

```
phpdoc --directory UAS --target ./phpdoc --ignore Tests/ --sourcecode --force --title UASParser

```

###  Health Score

32

—

LowBetter than 71% of packages

Maintenance18

Infrequent updates — may be unmaintained

Popularity33

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 83.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~865 days

Total

4

Last Release

2125d ago

PHP version history (3 changes)v0.52PHP &gt;=5.0.0

v0.53PHP &gt;=5.3.0

v0.9PHP &gt;=7.3.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/6e7028bcadbec2ee934da04d4d6232600481ac137b30b724ef116dfd55dbe9a9?d=identicon)[Synchro](/maintainers/Synchro)

---

Top Contributors

[![Synchro](https://avatars.githubusercontent.com/u/81561?v=4)](https://github.com/Synchro "Synchro (65 commits)")[![mimmi20](https://avatars.githubusercontent.com/u/1120192?v=4)](https://github.com/mimmi20 "mimmi20 (11 commits)")[![yarroslav](https://avatars.githubusercontent.com/u/3133620?v=4)](https://github.com/yarroslav "yarroslav (2 commits)")

---

Tags

httpparseruser agent

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/synchro-uasparser/health.svg)

```
[![Health](https://phpackages.com/badges/synchro-uasparser/health.svg)](https://phpackages.com/packages/synchro-uasparser)
```

###  Alternatives

[riverline/multipart-parser

One class library to parse multipart content with encoding and charset support.

17057.4M55](/packages/riverline-multipart-parser)[aplus/http

Aplus Framework HTTP Library

2311.6M10](/packages/aplus-http)[mimmi20/browser-detector

Library to detect Browsers and Devices

48153.5k3](/packages/mimmi20-browser-detector)[duzun/hquery

An extremely fast web scraper that parses megabytes of HTML in a blink of an eye. No dependencies. PHP5+

363146.3k4](/packages/duzun-hquery)[vdb/uri

A set of URI classes and a URI parser, based on RFC 3986

11225.6k2](/packages/vdb-uri)[bakame/http-structured-fields

A PHP library that parses, validates and serializes HTTP structured fields according to RFC9561 and RFC8941

442.6k4](/packages/bakame-http-structured-fields)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
