博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
discuz是如何判断手机端访问的
阅读量:4491 次
发布时间:2019-06-08

本文共 2450 字,大约阅读时间需要 8 分钟。

function checkmobile() {    global $_G;    $mobile = array();    //各个触控浏览器中$_SERVER['HTTP_USER_AGENT']所包含的字符串数组    static $touchbrowser_list =array('iphone', 'android', 'phone', 'mobile', 'wap', 'netfront', 'java', 'opera mobi', 'opera mini', 'ucweb', 'windows ce', 'symbian', 'series', 'webos', 'sony', 'blackberry', 'dopod', 'nokia', 'samsung', 'palmsource', 'xda', 'pieplus', 'meizu', 'midp', 'cldc', 'motorola', 'foma', 'docomo', 'up.browser', 'up.link', 'blazer', 'helio', 'hosin', 'huawei', 'novarra', 'coolpad', 'webos', 'techfaith', 'palmsource', 'alcatel', 'amoi', 'ktouch', 'nexian', 'ericsson', 'philips', 'sagem', 'wellcom', 'bunjalloo', 'maui', 'smartphone', 'iemobile', 'spice', 'bird', 'zte-', 'longcos', 'pantech', 'gionee', 'portalmmm', 'jig browser', 'hiptop', 'benq', 'haier', '^lct', '320x320', '240x320', '176x220');    //window手机浏览器数组【猜的】    static $mobilebrowser_list =array('windows phone');    //wap浏览器中$_SERVER['HTTP_USER_AGENT']所包含的字符串数组    static $wmlbrowser_list = array('cect', 'compal', 'ctl', 'lg', 'nec', 'tcl', 'alcatel', 'ericsson', 'bird', 'daxian', 'dbtel', 'eastcom', 'pantech', 'dopod', 'philips', 'haier', 'konka', 'kejian', 'lenovo', 'benq', 'mot', 'soutec', 'nokia', 'sagem', 'sgh', 'sed', 'capitel', 'panasonic', 'sonyericsson', 'sharp', 'amoi', 'panda', 'zte');    $pad_list = array('pad', 'gt-p1000');    $useragent = strtolower($_SERVER['HTTP_USER_AGENT']);    if(dstrpos($useragent, $pad_list)) {        return false;    }    if(($v = dstrpos($useragent, $mobilebrowser_list, true))){        $_G['mobile'] = $v;        return '1';    }    if(($v = dstrpos($useragent, $touchbrowser_list, true))){        $_G['mobile'] = $v;        return '2';    }    if(($v = dstrpos($useragent, $wmlbrowser_list))) {        $_G['mobile'] = $v;        return '3'; //wml版    }    $brower = array('mozilla', 'chrome', 'safari', 'opera', 'm3gate', 'winwap', 'openwave', 'myop');    if(dstrpos($useragent, $brower)) return false;    $_G['mobile'] = 'unknown';    //对于未知类型的浏览器,通过$_GET['mobile']参数来决定是否是手机浏览器    if(isset($_G['mobiletpl'][$_GET['mobile']])) {        return true;    } else {        return false;    }}function dstrpos($string, $arr, $returnvalue = false) {    if(empty($string)) return false;    foreach((array)$arr as $v) {        if(strpos($string, $v) !== false) {        $return = $returnvalue ? $v : true;        return $return;    }}    return false;}

 

转载于:https://www.cnblogs.com/smismile/p/4921012.html

你可能感兴趣的文章
Jaxb2 转换XML文档
查看>>
vue-计算属性-computed
查看>>
[网络流24题] 魔术球问题
查看>>
PHP----作业:查询数据显示在页面上
查看>>
特殊集合
查看>>
安卓维护项目小结以及注意事项[个人总结]
查看>>
重学前端学习笔记(四十三)--HTML的可访问性ARIA
查看>>
在CentOS 7上安装MongoDB
查看>>
前端-Excel在线预览
查看>>
多种跨域方案
查看>>
selenium
查看>>
豌豆荚
查看>>
bs4
查看>>
设计模式
查看>>
PowerDesigner连接数据库(oracle)
查看>>
gojs常用API (中文文档)
查看>>
【PHP】【java】执行父类构造函数之间的差异
查看>>
【php】 php在linux系统上运行,执行系统命令
查看>>
C语言的宏macro的使用
查看>>
如何设置树莓派 -Zero 自启动连接WIFI
查看>>