30

我希望在 PHP 中进行一些设备检测,并且正在研究一些选项。现在看起来最好的是 WURFL http://wurfl.sourceforge.net/。但由于它的非开源许可证,我对此非常谨慎。我也想知道它是否相关,因为文档网站看起来有点过时了。

WURFL 等其他选项包括 http://deviceatlas.com/http://51degrees.mobi/,但它们都不是开源的。

然后是仅 PHP 的解决方案,例如 http://detectmobilebrowsers.mobihttp://code.google.com/p/php-mobile-detect/http://detectmobilebrowsers.com/但这些都使用某种形式的看起来很难看的正则表达式。

对我来说理想的解决方案是我可以在本地存储并且可以根据需要进行更新的开源 XML 文件或数据库。

我在做梦吗?您更喜欢哪种解决方案来检测移动用户?

4

6 回答 6

4

很抱歉恢复一个死帖,但有一个开源替代方案 - OpenDDR - 但我还找不到它的 PHP 库,因此您需要编写自己的解析和搜索例程。

于 2012-06-23T08:50:26.133 回答
4

有什么理由不使用ua-parser项目?

PHP 客户端在这里:https ://github.com/tobie/ua-parser/tree/master/php

于 2013-04-22T11:53:53.137 回答
3

我使用基于http://detectmobilebrowsers.com/工作的脚本。它归结为一个正则表达式,几乎所有语言都支持它,而不仅仅是 PHP。随着正则表达式的发展,它甚至不是非常难看:主要的只有几行长,并且在大多数语言/框架中解析起来都非常快。作为一个正则表达式,它是完全透明的,并且不需要您安装一些库、DLL 或基于数据库/文件的存储库。

作者 Chad Smith 使用 WURFL 数据库编译了一个精简的极简正则表达式,以检测移动浏览器。平板电脑被排除在外,因为它们通常可以很好地与桌面版本的页面配合使用。他似乎每年更新一次,或者至少每当有新的主要移动浏览器出现时(这种情况并不经常。)

于 2013-10-25T21:42:05.467 回答
2

将平板浏览器检测添加到 Chad Smith 的正则表达式中很容易,而且看起来效果很好。请参阅关于部分:

http://detectmobilebrowsers.com/about

于 2014-02-27T09:29:07.867 回答
1

我使用的 MobileESP不如 WURFL 先进,但可以满足我的需要。MobileESP 中没有可以升级的单独数据库,您必须升级整个库。

于 2012-03-30T10:44:27.490 回答
0

如果您只需要设备分类 - 例如移动设备、台式机或平板电脑 - 那么Categorizr可能是最佳选择。它采用移动优先的方法,因为与大量的移动浏览器和其他浏览器相比,它更容易识别少量且相对稳定的桌面浏览器群体。

于 2012-12-03T15:21:24.410 回答