用户代理的特定HTML内容

时间:2014-06-19 17:15:27

标签: php user-agent

使用PHP,我想显示指定的HTML内容,具体取决于访问网页的设备。我认为最好的方法是获取浏览器的user agent

我试图特别针对以下设备,

  • IOS手机
  • IOS平板电脑
  • Android手机
  • Android平板电脑

如何获取浏览器的用户代理并根据代理回显变量?任何未指定的用户代理都应该有一个包罗万象的部分。

2 个答案:

答案 0 :(得分:0)

您可以检测大多数语言的用户代理,例如:

  • Javascript:

    var userAgent = navigator.userAgent;

  • PHP:

    $ userAgent = $ _SERVER [' HTTP_USER_AGENT'];

然后你必须做基本的事情,如同陈述等。

对于特定的Google或Bing机器人,我不会推荐它。你可以使用robots.txt说它们不会来,但我不认为改变很多东西是个好主意。

答案 1 :(得分:0)

有一个名为Mobile_Detect的库可以帮助解析浏览器的用户代理。然后,它提供了许多可以帮助您轻松识别设备的功能。用户代理从HTTP标头中提取。

在这种情况下,有三个功能特别有用,isTablet()isAndroidOS()isAndroidOS()

以下是可以检测Android手机和平板电脑,iPhone和iPad的功能示例。

Live example

switch (1) {
  case ($detect->isAndroidOS() && !$detect->isTablet()):
    # Android Phone
    echo "This is an Android Phone";
    break;
  case ($detect->isiOS() && !$detect->isTablet()):
    # iPhone/iTouch
    echo "This is an iPhone";
    break;
  case ($detect->isAndroidOS()):
    # Android Tablet
    echo "This is an Android Tablet";
    break;
  case ($detect->isiOS()):
    # iPad
    echo "This is an iPad";
    break;
  default:
    # Non Android/IOS Device
    echo "This is not an Android or IOS Device";
}