luderson/mobiledetectlib

Mobile_Detect 是一个轻量级的 PHP 类,用于检测移动设备。它通过结合 User-Agent 字符串和特定的 HTTP 头来检测移动环境。

3.0.2 2017-07-19 22:09 UTC

README

Mobile Detect

座右铭:"每个企业都应该有一个移动检测脚本,用于检测移动读者。"

Build Status Latest Stable Version Total Downloads Daily Downloads License

Mobile_Detect 是一个轻量级的 PHP 类,用于检测移动设备(包括平板电脑)。它通过结合 User-Agent 字符串和特定的 HTTP 头来检测移动环境。

我们致力于将 Mobile_Detect 打造成最佳的开放源代码移动检测资源,这就是为什么在每次发布之前,我们都会运行 单元测试,我们还会在 每天每周 基础上研究和更新检测规则。

您网站的内容策略非常重要!您需要一个完整的工具包来提供优化、快速且与用户相关的体验。Mobile_Detect 类是一个 服务器端检测 工具,可以帮助您实现响应式设计策略,它不是 CSS3 媒体查询或其他客户端功能检测形式的替代品。

公告

对于 2.x 分支,我们不再接受优化拉取请求,只接受用于测试的新正则表达式和 User-Agent。在 2.x 发布中,我们专注于 新平板电脑。有关电视、机器人或优化的所有拉取请求将在 3.0.0-beta 发布后关闭并分析。

仍在 3.0.0 分支上工作以提供设备检测!我们对这个非常兴奋!我们希望加快这个速度,但生活和家庭阻碍了我们的进程 ;)

特别感谢 JetBrainsPHPStorm 提供许可证。如果您从未听说过或尝试过 PHPStorm,那么您显然错过了一些东西!检查 PHPStorm 吧!

下载和演示

持续更新

您可以在发布和更新过程中使用 composer 来确保您拥有最新的 Mobile_Detect 版本。

composer require mobiledetect/mobiledetectlib
{
    "require": {
        "mobiledetect/mobiledetectlib": "^2.8"
    }
}
帮助

我目前正在为托管付费,并且花费了大量家庭时间来维护项目并计划未来的发布。我非常感谢任何形式的捐款,这将使研究得以继续。

特别感谢社区 👍 的捐款,BrowserStack - 为提供他们卓越的平台,Zend - 为捐赠许可证,Dragos Gavrila 贡献了标志。

第三方模块 / [提交新模块](../../issues/new?title=New%203rd%20party%20module&body=Name, Link and Description of the module.)

👉 将 Mobile_Detect.php 类放在一个单独的 module 中,并且不要将其包含在脚本核心中,因为更新频率很高。 :point_right: 在将类包含到您的 web 应用程序module 中时,始终使用 include_once '../path/to/Mobile_Detect.php 以防止冲突。

JavaScript

  • mobile-detect.js - Mobile-Detect类的JavaScript移植。由Heinrich Goebl制作。

Varnish缓存

  • Varnish Mobile Detect - 基于Mobile-Detect库进行移动用户检测的Varnish缓存解决方案。由willemk制作。
  • mobiledetect2vcl - 将Mobile Detect JSON数据库转换为基于UA的移动检测VCL子例程的Python脚本,易于集成到任何Varnish缓存配置中。由Carlos Abalde制作。

LUA

  • mobile-detect.lua 是Mobile-Detect的Lua移植,用于NGINX HTTP服务器。与mobile-detect.js非常相似。支持服务器端mobile-detect.js支持的所有方法。完全单元测试,并与Travis CI同步(包含构建通过徽章)。由Mark Walters制作。

PHP

WordPress

  • WordPress Mobile Detect - 允许您使用[notdevice][/notdevice]短代码将信息图表包裹起来,在服务器级别,WordPress将决定仅在用户不在手机或平板电脑上时显示该内容。由Jesse Friedman制作。

  • mobble - 为您的网站提供移动相关条件函数,例如is_iphone()is_mobile()is_tablet()。由Scott Evans制作。

  • WordPress Responsage - 允许您使您的图片响应式的WordPress主题插件。由Adrian Ciaschetti制作。

  • WP247 Body Classes - 为body标签添加唯一的类,以便基于各种属性(存档、用户、文章、移动)和WordPress "is"函数轻松进行样式化。移动属性包括设备类型、操作系统、浏览器等。例如:.is-mobile、.is-not-mobile、.is-tablet、.is-ios、.is-not-ios、.is-androidos、.is-chromebrowser。由wescleveland56制作。

Drupal

Joomla

  • yagendoo Joomla! Mobile Detection Plugin - 用于Joomla!的轻量级PHP插件,使用Mobile Detect类检测移动浏览器。由yagendoo media制作。

  • 用户代理检测插件 - 该系统插件检测您网站访客的用户代理并根据相应设置会话变量。根据用户代理,插件可检测网站是否在桌面电脑、平板电脑或智能手机上运行。它还可以检测访客是否为蜘蛛机器人(搜索引擎)。设置的会话变量:ualayout。可能的值:桌面、平板、移动、机器人。由@ReneKreijveld制作。

Magento

PrestaShop

  • PrestaShop是一个免费、安全且开源的购物车平台。自1.5.x版本开始,Mobile_Detect已包含在默认包中。

Laravel

  • Agent是基于Mobile Detect的Laravel用户代理类,具有一些附加功能。由Jens Segers制作。

  • BrowserDetect是一个浏览器和移动检测包,收集并包装了Laravel最佳的用户代理标识符。由Varga Zsolt创建。

Zend Framework

  • ZF2 Mobile-Detect是Zend Framework 2模块,提供Mobile-Detect功能(Mobile_Detect类作为服务、视图助手和插件控制器助手)。由neilime制作。

  • ZF2 MobileDetectModule简化了将PHP MobileDetect类与基于ZF2的应用集成。与现有的ZF2 Mobile-Detect模块有类似的想法,但在Mobile_Detect类的初始化和提供例程上有所不同。适当的视图助手和控制器插件也有不同的概念。由Nikola Posa制作。

Symfony

Slim Framework

  • Slim_Mobile_Detect实现了Mobile_Detect库,用于在Slim Framework应用程序中写入不同响应。

ExpressionEngine

Yii Framework

CakePHP

FuelPHP

  • Special Agent是一个FuelPHP包,使用php-mobile-detect来确定设备是否是移动设备。它覆盖了Fuelphp Agent类及其方法。由Robbie Bardjin制作。

TYPO3

  • px_mobiledetect是一个扩展,有助于检测访问者的移动设备类型(如果是平板电脑或智能手机等移动设备)。由Alexander Tretyak制作。

其他

  • PageCache是一个轻量级的PHP库,用于完整的页面缓存,内置Mobile-Detect支持。由Muhammed Mamedov制作。

  • Statamic CMS Mobile Detect是一个插件。由Haiku Lab的Sergei Filippov制作。

  • Kohana Mobile Detect是Mobile_Detect类在Kohana框架中的实现示例。由Luiz Alberto S. Ribeiro编写。

  • MemHT是一个免费的PHP CMS和博客,允许通过简单几步即可创建和管理网站。核心包含该类。

  • concrete5是一个免费开源的CMS。库包含在核心中。

  • engine7是一个PHP开源框架。Mobile_Detect类包含在框架中。

  • Zikula是一个免费开源的内容管理框架,允许您运行令人印象深刻的网站并构建强大的在线应用程序。核心使用Mobile-Detect切换到特殊的移动主题,使用jQueryMobile。

  • UserAgentInfo是一个用于解析用户代理字符串(HTTP_USER_AGENT)的PHP类。包括移动检查、机器人检查、浏览器类型/版本等。基于browscap、Mobile_Detect和ua-parser。为高流量网站和快速批量处理而创建。由quentin389制作。

  • LJ Mobile Detect是Mobile Detect在Craft CMS中的简单实现。由Lewis Jenkins制作。

  • Grav插件Mobile Detect是Mobile Detect在Grav CMS中的简单实现。由Dimitri Longo制作。

Perl

Python

  • pymobiledetect - 移动设备检测的 Python 包。由 Bas van Oostveen 制作。

Ruby

  • mobile_detect.rb 是一个使用由 php 项目公开的 JSON 数据并实现 API 基本子集(尽可能多)的 Ruby gem。由 Karthik T 制作。

Go

LUA

  • ua-lua 是一个用 LUA 编写的库,提供设备类型检测。ua-lua 通过 nginx 守护进程中的 user-agent 来检测移动设备或平板电脑。由 Frédéric Robinet 制作。