我可以从用户代理处获取Mac OS版本吗?

时间:2017-04-08 07:15:10

标签: php macos

我有一个不同Mac OS版本的应用程序 - 一个用于el Capitan和更高版本,一个用于以下所有操作系统版本。

用户(不幸的是)并不总是知道他们在el Cap或Sierra上并且无法搞清楚。

在我的下载页面上,我想向他们展示(如果可能)下载哪个版本,因此我想使用用户代理字符串来执行此操作。

它似乎可以包含“Intel Mac OS X 10_12_3”之类的短语 - 这是可靠的还是有标准的?在Apple.com上找不到它。如果是 - 我可以从中确定哪种形状?

1 个答案:

答案 0 :(得分:1)

我建议你匹配正则表达式

/OS X 10[_.](\d+)/

某些浏览器使用_来分隔OS X版本的各个部分,而其他浏览器使用.,这将匹配任一格式。捕获组将包含OS X主要版本号。如果它是11或更高,那么他们应该使用El Capitan版本。