PHP判断是手机端还是PC端 PHP判断是否是微信浏览器


Posted in PHP onMarch 15, 2017

本文实例为大家分享了PHP判断的两个实例,一是PHP判断是手机端还是PC端,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下

1、判断是否是手机端

function isMobile() { 
  // 如果有HTTP_X_WAP_PROFILE则一定是移动设备
  if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
    return true;
  } 
  // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
  if (isset($_SERVER['HTTP_VIA'])) { 
    // 找不到为flase,否则为true
    return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
  } 
  // 脑残法,判断手机发送的客户端标志,兼容性有待提高。其中'MicroMessenger'是电脑微信
  if (isset($_SERVER['HTTP_USER_AGENT'])) {
    $clientkeywords = array('nokia','sony','ericsson','mot','samsung','htc','sgh','lg','sharp','sie-','philips','panasonic','alcatel','lenovo','iphone','ipod','blackberry','meizu','android','netfront','symbian','ucweb','windowsce','palm','operamini','operamobi','openwave','nexusone','cldc','midp','wap','mobile','MicroMessenger'); 
    // 从HTTP_USER_AGENT中查找手机浏览器的关键字
    if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
      return true;
    } 
  } 
  // 协议法,因为有可能不准确,放到最后判断
  if (isset ($_SERVER['HTTP_ACCEPT'])) { 
    // 如果只支持wml并且不支持html那一定是移动设备
    // 如果支持wml和html但是wml在html之前则是移动设备
    if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {
      return true;
    } 
  } 
  return false;
}

2、判断是否是微信内置浏览器

function isWeixin() { 
  if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) { 
    return true; 
  } else {
    return false; 
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php中文本数据翻页(留言本翻页)
Oct 09 PHP
php中的MVC模式运用技巧
May 03 PHP
PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
Jul 09 PHP
PHP开发中四种查询返回结果分析
Jan 02 PHP
PHP利用MySQL保存session的实现思路及示例代码
Sep 09 PHP
Linux下安装PHP MSSQL扩展教程
Oct 24 PHP
一个非常完美的读写ini格式的PHP配置类分享
Feb 12 PHP
PHP实现在线阅读PDF文件的方法
Jun 23 PHP
php时间函数用法分析
May 28 PHP
PHP+Ajax实现验证码的实时验证
Jul 20 PHP
PHP+JS实现的商品秒杀倒计时用法示例
Nov 15 PHP
win10下 php安装seaslog扩展的详细步骤
Dec 04 PHP
thinkPHP简单导入和使用阿里云OSSsdk的方法
Mar 15 #PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
Mar 15 #PHP
thinkPHP简单调用函数与类库的方法
Mar 15 #PHP
Yii2 批量插入、更新数据实例
Mar 15 #PHP
Yii实现复选框批量操作实例代码
Mar 15 #PHP
thinkPHP实现签到功能的方法
Mar 15 #PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
Mar 14 #PHP
You might like
PHP用mysql数据库存储session的代码
2010/03/05 PHP
Sorting Array Values in PHP(数组排序)
2011/09/15 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
2013/07/05 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
一个经典的PHP验证码类分享
2014/11/18 PHP
Laravel中的Auth模块详解
2017/08/17 PHP
css把超出的部分显示为省略号的方法兼容火狐
2008/07/23 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
JavaScript人脸识别技术及脸部识别JavaScript类库Tracking.js
2015/09/14 Javascript
JavaScript的new date等日期函数在safari中遇到的坑
2016/10/24 Javascript
JS判断两个对象内容是否相等的方法示例
2017/04/10 Javascript
个人小程序接入支付解决方案
2019/05/23 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
2020/07/11 Javascript
[59:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第二局
2016/03/04 DOTA
Python 开发Activex组件方法
2009/11/08 Python
Python中lambda的用法及其与def的区别解析
2014/07/28 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
2019/10/24 Python
Python2与Python3的区别点整理
2019/12/12 Python
美国一家著名的儿童鞋制造商:Stride Rite
2017/01/02 全球购物
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
物业管理公司实习生自我鉴定
2013/09/19 职场文书
五一服装活动方案
2014/01/11 职场文书
2014庆六一活动方案
2014/03/02 职场文书
2014两会学习心得:榜样精神伴我行
2014/03/17 职场文书
内勤主管岗位职责
2014/04/03 职场文书
团委竞选演讲稿
2014/04/24 职场文书
党员四风自我剖析材料思想汇报
2014/09/13 职场文书
网站文案策划岗位职责
2015/04/14 职场文书
企业投资意向书
2015/05/09 职场文书
安全第一课观后感
2015/06/18 职场文书
教师学习十八届五中全会精神心得体会
2016/01/05 职场文书
2019新员工试用期转正申请书3篇
2019/08/13 职场文书
详解MySQL 联合查询优化机制
2021/05/10 MySQL
Java spring定时任务详解
2021/10/05 Java/Android
MySQL七大JOIN的具体使用
2022/02/28 MySQL