php判断电脑访问、手机访问的例子


Posted in PHP onMay 10, 2014

所以我就研究怎么用php去判断网页是电脑访问还是手机访问,然后再通过去加载不同的css来达到手机和电脑都可以正常的访问的效果。

网站查了很多资料,终于找到了一个合适、比较好用的代码,也希望能给大家一个参考。

<?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 相关文章推荐
php a simple smtp class
Nov 26 PHP
ThinkPHP CURD方法之where方法详解
Jun 18 PHP
WordPress中限制非管理员用户在文章后只能评论一次
Dec 31 PHP
PHP邮件群发机实现代码
Feb 16 PHP
支付宝服务窗API接口开发php版本
Jul 20 PHP
浅析php如何实现App常用的秒发功能
Aug 03 PHP
php str_replace替换指定次数的方法详解
May 05 PHP
PHP实现字符串大小写转函数的功能实例
Feb 06 PHP
php简单检测404页面的方法示例
Aug 23 PHP
PHP 文件上传限制问题
Sep 01 PHP
thinkPHP5框架路由常用知识点汇总
Sep 15 PHP
PHP文件打开关闭及读写操作示例解析
Aug 06 PHP
php计算程序运行时间的简单例子分享
May 10 #PHP
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
May 10 #PHP
php递归删除目录下的文件但保留的实例分享
May 10 #PHP
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
May 10 #PHP
php使用mkdir创建多级目录入门例子
May 10 #PHP
一个简单的PHP验证码实现代码
May 10 #PHP
php生成随机密码自定义函数代码(简单快速)
May 10 #PHP
You might like
PHP 错误之引号中使用变量
2009/05/04 PHP
php中ob_get_length缓冲与获取缓冲长度实例
2014/11/20 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
2016/03/04 PHP
Yii2分页的使用及其扩展方法详解
2016/05/23 PHP
php基于单例模式封装mysql类完整实例
2016/10/18 PHP
PHP 实现链式操作
2021/03/09 PHP
JQuery 无废话系列教程(一) jquery入门 [推荐]
2009/06/23 Javascript
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
Jquery实战_读书笔记2 选择器
2010/01/22 Javascript
jquery提升性能最佳实践小结
2010/12/06 Javascript
javascript中拼接HTML字符串的最快、最好的方法
2014/06/07 Javascript
学习jQuey中的return false
2015/12/18 Javascript
jQuery代码实现对话框右上角菜单带关闭×
2016/05/03 Javascript
Vue自定义指令介绍(2)
2016/12/08 Javascript
webpack配置导致字体图标无法显示的解决方法
2018/03/06 Javascript
玩转Koa之koa-router原理解析
2018/12/29 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
js实现翻牌小游戏
2020/07/31 Javascript
[02:42]完美大师赛主赛事淘汰赛第三日观众采访
2017/11/25 DOTA
[44:10]2018DOTA2亚洲邀请赛 4.5 淘汰赛 EG vs VP 第一场
2018/04/06 DOTA
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
简介Python设计模式中的代理模式与模板方法模式编程
2016/02/02 Python
更改Ubuntu默认python版本的两种方法python-&gt; Anaconda
2016/12/18 Python
Python  pip安装lxml出错的问题解决办法
2017/02/10 Python
使用CSS3编写类似iOS中的复选框及带开关的按钮
2016/04/11 HTML / CSS
SHEIN台湾:购买最新流行女装服饰
2019/05/18 全球购物
捷克建筑材料网上商店:DEK.cz
2021/03/06 全球购物
中学生学雷锋活动心得体会
2014/03/10 职场文书
省文明单位申报材料
2014/05/08 职场文书
企业宣传口号
2014/06/12 职场文书
应届大专生自荐书
2014/06/16 职场文书
欢迎家长标语
2014/10/08 职场文书
辞职信模板(中英文版)
2015/02/27 职场文书
nginx反向代理时如何保持长连接
2021/03/31 Servers
python百行代码实现汉服圈图片爬取
2021/11/23 Python
Python实现视频中添加音频工具详解
2021/12/06 Python