php – 解析手机用户代理字符串,好的解决方案或库?
要求:
通过从浏览器解析用户代理字符串来找出用户正在使用哪部电话.(在 PHP中) 例如.诺基亚1100,三星D900. 有一个很好的图书馆,有足够的电话供应商和模型数据库吗? 我找到的一些解决方案,需要你的观点: i)phonedetection:https://www.handsetdetection.com – 付费订阅 ii)WURFL – http://wurfl.sourceforge.net/ iii)自己的解决方案 – 我有一个小型的手机制造商和型号数据库,但我必须在我的代码中添加用户代理字符串的定制检查,以匹配/模糊匹配数据库,因为用户代理字符串格式在制造商之间不一致. 更新: 我们创建了一个量身定制的解决方案,它是正则表达式的混合,可以将标准用户代理(如iOS,Android,Blackberry和WURFL)作为其他手机(如symbian,j2me,bada等)的后备机制. 添加数据库/缓存(MySql,memcached,mongodb等)之后WURFL工作得很好,它已经作为核心代码库中的设置存在.尽管你必须每隔几周用最新版本的WURFL手机xml数据库更新/同步wurfl信息以保持更新与新发布的手机的规格.
首先,我会说KISS(Keep It Simple,Stupid)这是一个广泛使用的表达式.我首先要仔细检查我的业务需求,看看我真正需要多少设备信息以及我将要用它做什么.也许您只需要查看客户端使用的渲染引擎?
其次,您应该考虑解析时间.如果您最终使用ie WURFL并在您的站点上解析该XML,则在检查设备信息时需要解析40万行XML.当然,您可以将XML放入本地索引数据库,但这也需要一些维护脚本来将更新后的XML中的数据与数据库同步. 第三个(但也许应该是第一个?)正在考虑解决方案的成本/收益.如果您在网站上赚钱,那么对合作伙伴承担一些责任可能是明智之举.像handsetdetection.com这样的托管服务似乎能够以不那么可怕的成本提供高流量.另一个好处是,他们负责维护自己的存储库,如果他们的服务不够好,可能会失去客户.理论上,OpenSource社区可以进行4个月的休假,并且在那段时间内不会维持洗礼(我真的不认为应该担心任何事情;-) 不知道你的确切需求,我会优先考虑这样: >尽可能使用简单的解决方案,即Detect Mobile Browsers的解决方案>像WURFL一样去OpenSource.我只是喜欢OpenSource解决方案:-)>如果您的业务需要保证稳定性和数据质量,您应该让专业人员处理它;-) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |