找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 150|回复: 0

[cms教程] ecshop多重判断来访用户是否来自手机的方法

[复制链接]

该用户从未签到

发表于 2015-12-1 09:24:10 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
1.搜集资料,这个方法可以实现判断来访用户是否手机
$ua = strtolower($_SERVER['HTTP_USER_AGENT',);
$uachar="/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|coolpad|ktouch|tcl|oppo|doov|amoi|bbk|cect|amoi|zte|huawei|iphone|ipad|android|smartphone)/i";
if(($ua == '' || preg_match($uachar, $ua))&& !strpos(strtolower($_SERVER['REQUEST_URI',)]'wap'))
{
    $Loaction = 'mobile/';
    if (!empty($Loaction))
    {
        ecs_header("Location: $Loaction\n");
        exit;
    }
}

2.根据上面这个和一些资料,做了改良,先判断是否比较老的手机,然后再判断是否智能机系统
$ua = strtolower($_SERVER['HTTP_USER_AGENT',);
if(strpos(strtoupper($_SERVER['HTTP_ACCEPT',)]"VND.WAP.WML") > 0){// 检查浏览器是否接受 WML.
    $Loaction = 'mobile1/';
    if (!empty($Loaction))
    {
        ecs_header("Location: $Loaction\n");
        exit;
    }
}
//$uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|coolpad|k-touch|tcl|oppo|doov|amoi|bbk|cect|amoi|zte|huawei|iphone|ipad|android|smartphone)/i";
$uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|coolpad|k-touch|tcl|oppo|doov|amoi|bbk|cect|amoi|zte|huawei|iphone|ipad|android|smartphone|blackberry|configuration\/cldc|hp |hp-|htc |htc_|htc-|iemobile|kindle|midp|mmp|motorola|mobile|nokia|opera mini|opera |Googlebot-Mobile|YahooSeeker\/M1A1-R2D2|android|iphone|ipod|mobi|palm|palmos|pocket|portalmmm|ppc;|smartphone|sonyericsson|sqh|spv|symbian|treo|up.browser|up.link|vodafone|windows ce|xda |xda_)/i";
if(($ua == '' || preg_match($uachar, $ua))&& !strpos(strtolower($_SERVER['REQUEST_URI',)]'wap'))
{
    $Loaction = 'mobile/';
    if (!empty($Loaction))
    {
        ecs_header("Location: $Loaction\n");
        exit;
    }
}

3.// check if wap
function check_wap(){if(stristr($_SERVER['HTTP_VIA',,"wap")){// 先检查是否为wap代理,准确度高
returntrue;}elseif(strpos(strtoupper($_SERVER['HTTP_ACCEPT',)]"VND.WAP.WML") > 0){
// 检查浏览器是否接受
WML.return true; }elseif(preg_match('/(blackberry|configuration\/cldc|hp |hp-|htc |htc_|htc-|iemobile|kindle|midp|mmp|motorola|mobile|nokia|opera mini|opera |Googlebot-Mobile|YahooSeeker\/M1A1-R2D2|android|iphone|ipod|mobi|palm|palmos|pocket|portalmmm|ppc;|smartphone|sonyericsson|sqh|spv|symbian|treo|up.browser|up.link|vodafone|windows ce|xda |xda_)/i', $_SERVER['HTTP_USER_AGENT',)){
//检查USER_AGENT
return true; }else{return false; } }
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-10-5 23:24

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表