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 神盾解密工具
Jun 08 PHP
php广告加载类用法实例
Sep 23 PHP
php使用explode()函数将字符串拆分成数组的方法
Feb 17 PHP
PHP使用array_fill定义多维数组的方法
Mar 18 PHP
php删除指定目录的方法
Apr 03 PHP
php结合ajax实现手机发红包的案例
Oct 13 PHP
ThinkPHP使用getlist方法实现数据搜索功能示例
May 08 PHP
详解php 使用Callable Closure强制指定回调类型
Oct 26 PHP
PHP实现动态删除XML数据的方法示例
Mar 30 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
Dec 20 PHP
php使用fputcsv实现大数据的导出操作详解
Feb 27 PHP
php 文件上传至OSS及删除远程阿里云OSS文件
Jul 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的memcache类分享(memcache队列)
2014/03/26 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
2019/03/11 PHP
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
js改变embed标签src值的方法
2015/04/10 Javascript
JavaScript表格常用操作方法汇总
2015/04/15 Javascript
jQuery中常用的遍历函数用法实例总结
2015/09/01 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
微信小程序 使用腾讯地图SDK详解及实现步骤
2017/02/28 Javascript
原生js实现选项卡功能
2017/03/08 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
小程序组件之自定义顶部导航实例
2019/06/12 Javascript
微信小程序简单的canvas裁剪图片功能详解
2019/07/12 Javascript
layui(1.0.9)文件上传upload,前后端的实例代码
2019/09/26 Javascript
[02:59]2014DOTA2西雅图国际邀请赛 圆满落幕中国夺冠
2014/07/23 DOTA
python解析模块(ConfigParser)使用方法
2013/12/10 Python
python实现代码行数统计示例分享
2014/02/10 Python
R语言 vs Python对比:数据分析哪家强?
2017/11/17 Python
Python:Scrapy框架中Item Pipeline组件使用详解
2017/12/27 Python
python3.5安装python3-tk详解
2019/04/26 Python
使用Python实现跳一跳自动跳跃功能
2019/07/10 Python
Python中list的交、并、差集获取方法示例
2019/08/01 Python
Python values()与itervalues()的用法详解
2019/11/27 Python
pandas针对excel处理的实现
2021/01/15 Python
Python爬虫+tkinter界面实现历史天气查询的思路详解
2021/02/22 Python
css3实现文字首尾衔接跑马灯的示例代码
2020/10/16 HTML / CSS
用canvas显示验证码的实现
2020/04/10 HTML / CSS
英国百安居装饰建材网上超市:B&Q
2016/09/13 全球购物
美国在线自行车商店:Jenson USA
2018/05/22 全球购物
道德模范先进事迹
2014/02/14 职场文书
小学生作文评语大全
2014/04/21 职场文书
篮球比赛口号
2014/06/10 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
七一活动主持词
2015/06/29 职场文书
为什么说餐饮很难做,是因为你不了解这些新规则
2019/08/20 职场文书
一文教你快速生成MySQL数据库关系图
2022/06/28 Redis