alone-php/browser

解析浏览器头

1.0.0 2025-05-29 08:34 UTC

This package is auto-updated.

Last update: 2025-06-02 08:55:08 UTC


README

composer require alone-php/browse

PHP Browser UA 解析类

这是一个用于解析浏览器UA字符串的PHP类,可以识别用户的设备、操作系统、浏览器和应用信息。

功能特点

  • 准确识别各种操作系统(Windows, macOS, iOS, Android, HarmonyOS等)
  • 支持识别移动设备、平板和PC设备
  • 支持识别各种浏览器(Chrome, Safari, Firefox, Edge等)
  • 支持识别常见移动应用(微信, 支付宝, 微博, QQ等)
  • 支持识别设备品牌和型号(iPhone, iPad, 华为, 小米, 三星等)
  • 支持识别用户语言偏好
  • 支持识别智能电视和游戏机等特殊设备

使用方法

// 引入Browser类
require_once 'Browser.php';

// 实例化Browser类
$browser = new Browser(
    $_SERVER['HTTP_USER_AGENT'],           // 浏览器UA
    $_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? '' // 语言信息
);

// 获取系统信息
echo "操作系统: " . $browser->getSystem() . " " . $browser->getSystemVersion() . "\n";

// 获取设备类型
echo "是否移动端: " . ($browser->isMobile() ? "" : "") . "\n";
echo "是否PC端: " . ($browser->isPC() ? "" : "") . "\n";
echo "是否平板: " . ($browser->isPad() ? "" : "") . "\n";

// 获取浏览器信息
echo "浏览器: " . $browser->getBrowserName() . " " . $browser->getBrowserVersion() . "\n";

// 获取应用信息
echo "应用: " . $browser->getAppName() . " " . $browser->getAppVersion() . "\n";

// 获取设备信息
echo "设备: " . $browser->getDevice() . "\n";

// 获取语言信息
echo "语言: " . $browser->getLanguage() . " (" . $browser->getLanguageName() . ")\n";

支持的操作系统

  • Windows (7/8/8.1/10/11)
  • macOS
  • iOS
  • iPadOS
  • Android
  • HarmonyOS (华为)
  • Linux (Ubuntu, Debian, Fedora, CentOS)
  • ChromeOS
  • 智能电视系统 (Tizen, WebOS)
  • 游戏机系统 (PlayStation, Xbox, Nintendo Switch)

支持的浏览器

  • Chrome
  • Safari
  • Firefox
  • Edge
  • Opera
  • Internet Explorer
  • QQ浏览器
  • UC浏览器
  • 华为浏览器
  • MIUI浏览器
  • 搜狗浏览器
  • 百度浏览器
  • 三星浏览器
  • OPPO浏览器
  • vivo浏览器

支持的应用

  • 微信 (WeChat)
  • 支付宝 (Alipay)
  • 微博 (Weibo)
  • QQ
  • 抖音 (Douyin/TikTok)
  • 淘宝/天猫
  • 京东
  • 百度
  • 快手
  • 小红书

支持的设备

  • PC设备 (Windows, macOS, Linux)
  • 苹果设备 (iPhone, iPad, iPod, Apple TV)
  • 安卓手机 (各品牌)
  • 平板设备 (iPad, 安卓平板)
  • 华为设备 (P系列, Mate系列, 折叠屏等)
  • 小米设备
  • 三星设备 (Galaxy系列)
  • OPPO设备
  • vivo设备
  • 智能电视
  • 游戏机

测试脚本

  • test_simple.php - 简单测试脚本
  • test_ua_comprehensive.php - 全面测试脚本
  • test_ios.php - iOS设备测试
  • test_android.php - Android设备测试
  • test_harmony.php - HarmonyOS设备测试
  • test_summary.php - 功能总结测试

注意事项

  • UA字符串的格式可能会随时间变化,需要定期更新识别规则
  • 在某些情况下,无法100%准确识别设备和浏览器信息
  • 建议在实际应用中添加适当的容错机制