问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

php判断终端是手机还是电脑访问网站

发布网友 发布时间:2022-04-06 02:15

我来回答

1个回答

热心网友 时间:2022-04-06 03:44

可以参考下这段代码,主要是通过HTTP的一些请求判断终端类型,详见代码。

<?php 
function check_wap() {  
    if (isset($_SERVER['HTTP_VIA'])) return true;  
    if (isset($_SERVER['HTTP_X_NOKIA_CONNECTION_MODE'])) return true;  
    if (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID'])) return true;  
    if (strpos(strtoupper($_SERVER['HTTP_ACCEPT']),"VND.WAP.WML") > 0) {  
        // Check whether the browser/gateway says it accepts WML.  
        $br = "WML";  
    } else {  
        $browser = isset($_SERVER['HTTP_USER_AGENT']) ? trim($_SERVER['HTTP_USER_AGENT']) : '';  
        if(empty($browser)) return true;
        $mobile_os_list=array('Google Wireless Transcoder','Windows CE','WindowsCE','Symbian','Android','armv6l','armv5','Mobile','CentOS','mowser','AvantGo','Opera Mobi','J2ME/MIDP','Smartphone','Go.Web','Palm','iPAQ');  
              
        $mobile_token_list=array('Profile/MIDP','Configuration/CLDC-','160×160','176×220','240×240','240×320','320×240','UP.Browser','UP.Link','SymbianOS','PalmOS','PocketPC','SonyEricsson','Nokia','BlackBerry','Vodafone','BenQ','Novarra-Vision','Iris','NetFront','HTC_','Xda_','SAMSUNG-SGH','Wapaka','DoCoMo','iPhone','iPod');  
              
        $found_mobile=checkSubstrs($mobile_os_list,$browser) ||  
                  checkSubstrs($mobile_token_list,$browser); 
if($found_mobile)
$br ="WML";
else $br = "WWW";
    }  
    if($br == "WML") {  
        return true;  
    } else {  
        return false;  
    }  
}
function checkSubstrs($list,$str){
$flag = false;
for($i=0;$i<count($list);$i++){
if(strpos($str,$list[$i]) > 0){
$flag = true;
break;
}
}
return $flag;
}
if(check_wap()){
echo "wap";
}else{
echo "web";
}
?>

更多问题可以去php中文网问答社区提问http://www.php.cn/wenda.html,大神在线帮你解决,希望对你有帮助

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
在公交车上实施扒窃,会受到怎样的处罚? 交通违法行为识别 公交车扒窃会如何处罚? 郑州鱼缸清洗找哪家公司做得比较好? 郑州有没有专业维修鱼缸,清洗鱼缸的? ...的鱼缸,放在办公室养些鱼水草之类的。郑州哪里有卖这样的鱼缸。_百... 我们公司想要定做个观赏鱼缸,不知道郑州哪家公司最专业? 谁知道郑州生态鱼缸定做哪家做的效果最好? 联想电脑启用无线功能的功能键? 笔记本电脑怎么连接网笔记本电脑怎样连接无线网 php判断用户是电脑还是手机Pad访问 php怎么判断客户是用手机还是用电脑访问的网站? php 判断是电脑还是手机浏览器打开 PHP CI 框架 怎么在访问的是否区分手机 和 电脑访问 php检测用户是 手机端还是电脑端 PHP判断是手机端访问还是PC端访问网站 php如何判断用户通过手机wap访问还是电脑直接访问 php如何判断是手机访问还是电脑访问 wamp如何升级php apache mysql php.ini怎么设置才能加载 每次重开机时wampserver在桌面右下角处的php.ini文件都成了空文件,是为什么呀。 WAMP中 apache和php目录下的php.ini有什么区别 如何修改wamp的默认访问目录 wamp怎么还原php.ini 有两个PHP.INI文件,选择哪一个修改include_path。安装smarty,我用的是wamp环境。求大神指点。 wampserver怎么修改php版本 怎么修改wampserver2.3 php的错误显示格式 apache如何配置php 5.2.17, php 5.2.17中php.ini又如何配置? wamp 配置 php短标签怎么修改 关于php.ini设置问题怎么可以正常使用&lt;? ?&gt; php 获取访问客户端是pc端还是手机端 php如何判断客户端是pc还是手机 php 区分手机 和 pc 访问 ThinkPHP中判断是手机端还是电脑端访问的方法 PHP怎么判断终端是不是电脑访问 php 怎么把当前的日期转换成时间戳 ThinkPHP 如何把获取到的日期格式的时间转化为时间戳 PHP 将输出时间转变为时间戳的问题 登录图片看不清换另一张,如何用js实现 asp.net里的验证码怎么实现 “看不清换一张”是怎么实现的 电脑系统登录时验证码只显示看不清换一张图怎么办? 验证码看不清怎么用程序来实现 为什么我点一下验证码的“看不清换一张”时,页面的所有的内容都没有了呢?怎样才能留住它呢? 用PHP技术制作验证码遇到的问题。 PHP验证码 实现点击刷新 PHP刷新验证码问题 不同框架下 实现php验证码。。。 php html关于局部刷新验证码图片的问题 php怎么生成6位的不重复的字符串 PHP 随机文字不重复 要从几十个之间随机让他显示8个 这8个彼此不重复 该怎么修改 以下代码能随机但是重复