php如何判断http请求来自移动端?

这是网上写的代码:
// 判断是否是手机

function is_mobile()
{
    $agent = strtolower($_SERVER['HTTP_USER_AGENT']);
    $mobileList = array('windows phone', 'mac os',  'iphone', 'android', 'ipad');
    foreach($mobileList as $value) {
        if(strpos($agent, $value) !== false) {
            return true;
        }
    }
    return false;

mac os为什么成为了移动端的标识?不是应该是苹果电脑吗?

阅读 4k
3 个回答

你可以用Mobile_Detect库判断,git上有下载

以前也找过类似的问题

给出的答案差不多都是这个判断这个常量

$_SERVER['HTTP_USER_AGENT']

这个个人觉得可以换种方式解决。如果不是特别变态的需求,非得要php来做这件事的话,可以考虑下js去做这件事。js去做这件事简单方便又快捷,总感觉后台去做这些判断怪怪的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题