在PHP中确定客户端操作系统

时间:2010-02-17 11:28:06

标签: php

我的index.php中有两个页面重定向。页面为example_system_os.phpexample_mobile_os.php

如何用PHP确定用户的操作系统?

2 个答案:

答案 0 :(得分:6)

get_browser函数可用于提取浏览器发送的User-Agent HTTP标头的一些信息。

在这些信息中,似乎有一些关于浏览器运行的操作系统的数据 - 即关于客户端操作系统。


引用get_browser手册页上给出的示例:

Array
(
    [browser_name_regex] => ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
    [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
    [parent] => Firefox 0.9
    [platform] => WinXP
    [browser] => Firefox
    [version] => 0.9


但请注意,User-Agent HTTP标头由客户端发送,这意味着:

  • 可以禁用
  • 它可以伪造(即你可以得到任何种类的垃圾^^)

答案 1 :(得分:4)

您可以为各种平台详细信息解析$_SERVER['HTTP_USER_AGENT']字符串,但我不相信这是一种确定性的方法,因为它很容易被伪造。