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 相关文章推荐
搜索引擎技术核心揭密
Oct 09 PHP
PHP读取XML值的代码(推荐)
Jan 01 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
Dec 06 PHP
PHP 登录记住密码实现思路
May 07 PHP
解析php如何将日志写进syslog
Jun 28 PHP
PHP mysql与mysqli事务使用说明 分享
Aug 17 PHP
PHP中判断变量为空的几种方法分享
Aug 26 PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 PHP
Mac环境下php操作mysql数据库的方法分享
May 11 PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 PHP
PHP进阶学习之命名空间基本用法分析
Jun 18 PHP
Yii框架操作cookie与session的方法实例详解
Sep 04 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 网络开发详解之远程文件包含漏洞
2010/04/25 PHP
PHP中file_exists函数不支持中文名的解决方法
2014/07/26 PHP
PHP统计目录大小的自定义函数分享
2014/11/18 PHP
PHP flush 函数使用注意事项
2016/08/26 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
2017/02/10 PHP
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
node.js中的fs.mkdir方法使用说明
2014/12/17 Javascript
jQuery中nextAll()方法用法实例
2015/01/07 Javascript
javascript实现数组内值索引随机化及创建随机数组的方法
2015/08/10 Javascript
jQuery实现点击按钮弹出可关闭层的浮动层插件
2015/09/19 Javascript
JavaScript拖拽、碰撞、重力及弹性运动实例分析
2016/01/08 Javascript
jQuery多文件异步上传带进度条实例代码
2016/08/16 Javascript
微信小程序链接传参并跳转新页面
2016/11/29 Javascript
移动端使用localResizeIMG4压缩图片
2017/04/22 Javascript
JavaScript实现简单的弹窗效果
2020/05/19 Javascript
详解Vue.js 响应接口
2020/07/04 Javascript
修改Vue打包后的默认文件名操作
2020/08/12 Javascript
vue实现移动端H5数字键盘组件使用详解
2020/08/25 Javascript
JS实现简易图片自动轮播
2020/10/16 Javascript
vue 使用饿了么UI仿写teambition的筛选功能
2021/03/01 Vue.js
详解Python中time()方法的使用的教程
2015/05/22 Python
浅谈Python数据类型之间的转换
2016/06/08 Python
使用pyecharts在jupyter notebook上绘图
2020/04/23 Python
python requests.post带head和body的实例
2019/01/02 Python
Python反爬虫技术之防止IP地址被封杀的讲解
2019/01/09 Python
python manage.py runserver流程解析
2019/11/08 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
python matlab库简单用法讲解
2020/12/31 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
英国巧克力贸易公司:Chocolate Trading Company
2017/03/21 全球购物
华为智利官方商店:Huawei Chile
2020/05/09 全球购物
人力资源管理毕业生自荐信
2014/06/26 职场文书
2014年政务公开工作总结
2014/12/09 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
反腐倡廉影片观后感
2015/06/08 职场文书
Django实现翻页的示例代码
2021/05/24 Python