Agent
Agent stats
- Downloads
- 36.3M
- Stars
- 4,286
- Open Issues
- 76
- Forks
- 437
Desktop/mobile user agent parser with support for Laravel, based on Mobiledetect
Agent: Laravel User Agent Parser
Agent is a powerful PHP package for parsing user agent strings, designed to work seamlessly with Laravel. It is built on the well-regarded Mobile Detect library, enhanced with desktop support and additional functionalities for a more comprehensive user agent analysis.
Key Features
- User Agent Parsing: Efficiently parse user agent strings to determine types of devices, browsers, and operating systems.
- Mobile Detection: Detect various mobile devices including phones and tablets.
- Desktop Detection: Identify desktop users, distinguishing them from mobile or tablet users.
- Browser and Platform Analysis: Determine browser types and operating systems, including versions (in beta).
- Robot Detection: Identify and differentiate robots from human users.
- Language Extraction: Extract browser's accept languages from the user agent.
- Device, OS, and Browser Information: Get detailed info about the device, operating system, and browser names.
Installation
Install the package via composer:
composer require jenssegers/agent
Laravel Integration (Optional)
Add the service provider and alias to your config/app.php:
Jenssegers\Agent\AgentServiceProvider::class,'Agent' => Jenssegers\Agent\Facades\Agent::class,
Usage
Create an Agent instance or use the Laravel facade:
use Jenssegers\Agent\Agent;$agent = new Agent();
Basic Methods
- Check properties:
$agent->is('iPhone'); - Use magic methods:
$agent->isAndroidOS(); - Regular expression matching:
$agent->match('regexp'); - Get device, platform, or browser details:
$agent->device(); $agent->platform(); $agent->browser();
Advanced Features
- Get accept languages:
$languages = $agent->languages(); - Check if the device is a desktop:
$agent->isDesktop(); - Determine if the user agent belongs to a robot:
$robot = $agent->robot();
Additional Information
Agent leverages the Mobile Detect library and is compatible with its methods. It also supports robot detection using the jaybizzle/crawler-detect package. For detailed examples and method descriptions, refer to the Mobile Detect documentation.
The package is licensed under the MIT License and contributors can report security vulnerabilities through the provided security contact steps.
With its comprehensive set of features, Agent is an essential tool for developers needing detailed user agent analysis in their Laravel applications.