Macro Da

每天学一点,成长多一点!

PHP和JS判断用户浏览器标识的是移动端还是PC端

当用户使用手机等移动终端访问网站时,我们可以通过PHP或js检测用户终端类型,如果是手机用户,则引导用户访问适配手机屏幕的移动站点。本文将介绍分别使用PHP和js代码判断用户终端类型。

PHP判断手机还是电脑

<?php
$is_mobile = (is_mobile() == true) ? "手机" : "电脑";
echo '<label>php判断结果:</label><span class="red">' . $is_mobile . '</span>';

function is_mobile() { 
    $user_agent = $_SERVER['HTTP_USER_AGENT']; 
    $mobile_agents = array("240x320", "acer", "acoon", "acs-", "abacho", "ahong", "airness", "alcatel", "amoi", 
        "android", "anywhereyougo.com", "applewebkit/525", "applewebkit/532", "asus", "audio", 
        "au-mic", "avantogo", "becker", "benq", "bilbo", "bird", "blackberry", "blazer", "bleu", 
        "cdm-", "compal", "coolpad", "danger", "dbtel", "dopod", "elaine", "eric", "etouch", "fly ", 
        "fly_", "fly-", "go.web", "goodaccess", "gradiente", "grundig", "haier", "hedy", "hitachi", 
        "htc", "huawei", "hutchison", "inno", "ipad", "ipaq", "iphone", "ipod", "jbrowser", "kddi", 
        "kgt", "kwc", "lenovo", "lg ", "lg2", "lg3", "lg4", "lg5", "lg7", "lg8", "lg9", "lg-", "lge-", "lge9", "longcos", "maemo", 
        "mercator", "meridian", "micromax", "midp", "mini", "mitsu", "mmm", "mmp", "mobi", "mot-", 
        "moto", "nec-", "netfront", "newgen", "nexian", "nf-browser", "nintendo", "nitro", "nokia", 
        "nook", "novarra", "obigo", "palm", "panasonic", "pantech", "philips", "phone", "pg-", 
        "playstation", "pocket", "pt-", "qc-", "qtek", "rover", "sagem", "sama", "samu", "sanyo", 
        "samsung", "sch-", "scooter", "sec-", "sendo", "sgh-", "sharp", "siemens", "sie-", "softbank", 
        "sony", "spice", "sprint", "spv", "symbian", "tablet", "talkabout", "tcl-", "teleca", "telit", 
        "tianyu", "tim-", "toshiba", "tsm", "up.browser", "utec", "utstar", "verykool", "virgin", 
        "vk-", "voda", "voxtel", "vx", "wap", "wellco", "wig browser", "wii", "windows ce", 
        "wireless", "xda", "xde", "zte"); 
    $is_mobile = false; 
    foreach ($mobile_agents as $device) { 
        if (stristr($user_agent, $device)) { 
            $is_mobile = true; 
            break; 
        } 
    } 
    return $is_mobile; 
}
?>

JS判断手机还是电脑

html代码

<p><label>js判断结果:</label><span id="rs_js" class="red"></span></p>

js代码

if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || /Android/i.test(navigator.userAgent) || /BlackBerry/i.test(navigator.userAgent) || /IEMobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) { 
    if (/iPad/i.test(navigator.userAgent)) { 
        $("#rs_js").text("iPad平板"); 
    } else { 
        $("#rs_js").text("手机"); 
    } 
} else { 
    $("#rs_js").text("电脑"); 
}
点赞

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注