Php 如何检测来自智能手机的用户

Php 如何检测来自智能手机的用户,php,.htaccess,user-agent,smartphone,google-ads-api,Php,.htaccess,User Agent,Smartphone,Google Ads Api,我如何知道用户是否通过智能手机(尤其是iPhone和Android)访问我的网站 我想将用户重定向到一个专门的网站,因此PHP检测和htaccess检测都很好 更具体地说,用户将来自AdWords活动。AdWords是否在url中添加了一些有帮助的内容?我已经在一个项目中使用了这些内容。我相信大约一年前我在stackoverflow.com上找到了这段代码。您可以修改if语句以仅重定向特定设备或重定向到每个设备的特定站点。这是一个包罗万象的功能,可以将任何移动设备重定向到该页面。我将它放在一个函

我如何知道用户是否通过智能手机(尤其是iPhone和Android)访问我的网站

我想将用户重定向到一个专门的网站,因此PHP检测和htaccess检测都很好


更具体地说,用户将来自AdWords活动。AdWords是否在url中添加了一些有帮助的内容?

我已经在一个项目中使用了这些内容。我相信大约一年前我在stackoverflow.com上找到了这段代码。您可以修改if语句以仅重定向特定设备或重定向到每个设备的特定站点。这是一个包罗万象的功能,可以将任何移动设备重定向到该页面。我将它放在一个函数中,该函数在每个页面的标题中调用(因为我拥有的每个页面都包含相同的header.php)


我从未使用过AdWords,但我发现这一页详细介绍了如何向URL添加GET变量:

此信息已在$\u SERVER superglobal中。你所要做的就是在
$\u服务器['HTTP\u用户\u代理]

只需定义一些函数即可,然后重定向到特定页面,如下所示(这是一种过程性方法):


我查看了以下位置的用户代理字符串:

老实说,最简单的方法似乎是检查$\u SERVER['HTTP\u USER\u AGENT']是否包含单词“Mobile”


当然,它可以检测任何移动设备、智能手机或平板电脑,因此它可能不适合您的情况,但它似乎是我作为一名网络开发人员的最大区别——我的用户是在现代“移动”浏览器上,还是在PODB(普通的老式桌面浏览器)上

如果能帮到你的话,可能会有重复的参考资料。谢谢大家!伟大的解决方案!但要注意的是,平板电脑也将与手机相匹配
$iphone = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
$android = strpos($_SERVER['HTTP_USER_AGENT'],"Android");
$palmpre = strpos($_SERVER['HTTP_USER_AGENT'],"webOS");
$berry = strpos($_SERVER['HTTP_USER_AGENT'],"BlackBerry");
$ipod = strpos($_SERVER['HTTP_USER_AGENT'],"iPod");
$ipad = strpos($_SERVER['HTTP_USER_AGENT'],"iPad");

if($iphone || $android || $palmpre || $ipod || $berry || $ipad == true) 
{ 
    header('Location: mobile');
}
<?php

$mobile = array('Iphone', 'Androind'); //etc add more


//We won't use global keyword
//We would pass an array as arg instead
function isMobile(array $mobile){
  foreach($mobile as $agent){

     if ( strpos($_SERVER['HTTP_USER_AGENT'], $agent) ){
         //mobile detected
         //or return its name, do it the way you like
         return true;
     }
  }
}


//Now simply check then do redirect, like this
if ( isMobile($mobile) ){

   header('Location: /some-mobile-page.php')

} else {
  header('Location: /regular-page.php');
}