首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在PHP中检测移动设备的最简单方法

在PHP中检测移动设备的最简单方法
EN

Stack Overflow用户
提问于 2010-11-07 19:49:53
回答 15查看 453.5K关注 0票数 213

使用PHP判断用户是否正在使用移动设备浏览我的站点,最简单的方法是什么?

我遇到了许多可以使用的类,但我希望有一个简单的if条件!

有什么办法可以做到这一点吗?

EN

回答 15

Stack Overflow用户

发布于 2012-06-12 09:28:46

我用PHP写了this script to detect a mobile browser

代码根据用户代理字符串检测用户,方法是对经过数百次测试后仅在移动设备用户代理字符串中找到的单词执行preg_match()操作。它在所有当前的移动设备上都有100%的准确率,我目前正在更新它,以支持更多的移动设备。该代码称为isMobile,如下所示:

function isMobile() {
    return preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"]);
}

你可以这样使用它:

// Use the function
if(isMobile()){
    // Do something for only mobile users
}
else {
    // Do something for only desktop users
}

要将用户重定向到您的移动站点,我将执行以下操作:

// Create the function, so you can use it
function isMobile() {
    return preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\.browser|up\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"]);
}
// If the user is on a mobile device, redirect them
if(isMobile()){
    header("Location: http://m.yoursite.com/");
}

如果你有任何问题,请告诉我,祝你好运!

票数 113
EN

Stack Overflow用户

发布于 2015-07-28 20:25:51

我发现mobile detect非常简单,您可以只使用isMobile()函数:)

票数 23
EN

Stack Overflow用户

发布于 2017-01-31 04:05:25

function isMobileDev(){
    if(!empty($_SERVER['HTTP_USER_AGENT'])){
       $user_ag = $_SERVER['HTTP_USER_AGENT'];
       if(preg_match('/(Mobile|Android|Tablet|GoBrowser|[0-9]x[0-9]*|uZardWeb\/|Mini|Doris\/|Skyfire\/|iPhone|Fennec\/|Maemo|Iris\/|CLDC\-|Mobi\/)/uis',$user_ag)){
          return true;
       };
    };
    return false;
}
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4117555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档