Agent - PHP用户代理解析器
agent
机器人
3/5
🧩 软硬件结合
已发布
项目简介
👮 A PHP desktop/mobile user agent parser with support for Laravel, based on Mobiledetect
👮 A PHP desktop/mobile user agent parser with support for Laravel, based on Mobiledetect
标签
项目特点
支持检测桌面端、手机、平板等设备类型
自动识别主流浏览器(Chrome、Firefox、Safari、Edge 等)
支持操作系统检测(Windows、macOS、Linux、iOS、Android 等)
内置机器人/爬虫识别(Googlebot、Bingbot、Slurp 等)
提供 Laravel Facade 和 Blade 指令,开箱即用
支持 Accept-Language 语言偏好解析
技术规格
| 编程语言 | PHP |
|---|---|
| 最低 PHP 版本 | 7.2+ |
| 核心依赖 | mobiledetect/mobiledetectlib |
| 框架支持 | Laravel 5.x / 6.x / 7.x / 8.x / 9.x / 10.x |
| 安装方式 | Composer |
| 包名 | jenssegers/agent |
| 检测维度 | 设备、浏览器、平台、语言、机器人 |
| 测试覆盖率 | 单元测试 + 集成测试 |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| mobiledetect/mobiledetectlib | 1 | — | 设备检测底层库 |
| phpunit/phpunit | 1 | — | 单元测试 |
| orchestra/testbench | 1 | — | Laravel 测试辅助 |
| mockery/mockery | 1 | — | 模拟对象库 |
| laravel/framework | 1 | — | 仅在使用 Laravel 时需要 |
能力画像
**记忆与知识检索**:3/5 — 内置了设备、浏览器、操作系统和机器人的规则库,能快速匹配 User-Agent 字符串
**动手与操作**:2/5 — 安装配置简单,但本身不涉及硬件操作
**编程与算法**:3/5 — 核心是正则匹配与规则引擎,算法复杂度中等
**设计与建模**:2/5 — 提供了清晰的 Facade 和 Service Provider 设计,但整体结构较简单
**实验与调试**:4/5 — 支持在 Laravel Tinker 中直接调用,方便调试 User-Agent 识别结果
**协作与分享**:3/5 — 通过 Composer 分发,有完善的测试和文档,易于团队复用
**学习与研究**:3/5 — 适合学习 User-Agent 解析原理和 Laravel 包开发模式
**系统集成**:4/5 — 可轻松集成到任何 PHP 项目或 Laravel 应用中,作为中间件或服务使用
所需技能
PHP 基础语法与面向对象编程
Composer 依赖管理
Laravel 服务容器与 Facade 机制(可选)
正则表达式基础
HTTP 请求头(User-Agent)基本概念
适用场景
网站统计与用户行为分析,区分移动端与桌面端访问
自适应网站根据设备类型返回不同视图或模板
限制某些功能仅对桌面端或移动端开放
识别爬虫机器人,控制抓取频率或返回不同内容
多语言网站根据 Accept-Language 自动切换语言
Laravel 项目中快速集成设备检测中间件