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 相关文章推荐
基于mysql的论坛(5)
Oct 09 PHP
php echo 输出字符串函数详解
May 13 PHP
php中使用Akismet防止垃圾评论的代码
Jun 10 PHP
Windows下部署Apache+PHP+MySQL运行环境实战
Aug 31 PHP
php实现统计邮件大小的方法
Aug 06 PHP
PHP引用符&amp;的用法详细解析
Aug 22 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
Oct 15 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
Jan 22 PHP
php读取csv文件并输出的方法
Mar 14 PHP
php强大的时间转换函数strtotime
Feb 18 PHP
php数据访问之增删改查操作
May 09 PHP
Laravel使用支付宝进行支付的示例代码
Aug 16 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 文章采集正则代码
2009/12/28 PHP
PHP中英混合字符串截取函数代码
2011/07/17 PHP
PHP FTP操作类代码( 上传、拷贝、移动、删除文件/创建目录)
2014/05/10 PHP
Yii2.0表关联查询实例分析
2016/07/18 PHP
php实现微信发红包功能
2018/07/13 PHP
idTabs基于JQuery的根据URL参数选择Tab插件
2012/04/11 Javascript
javascript学习笔记(四) Number 数字类型
2012/06/19 Javascript
JavaScript高级程序设计(第3版)学习笔记5 js语句
2012/10/11 Javascript
禁用页面部分JavaScript方法的具体实现
2013/07/31 Javascript
浅谈JavaScript 框架分类
2014/11/10 Javascript
浅析javascript的间隔调用和延时调用
2014/11/12 Javascript
jquery SweetAlert插件实现响应式提示框
2015/08/18 Javascript
JavaScript电子时钟倒计时
2016/01/09 Javascript
JavaScript中的闭包
2016/02/24 Javascript
原生js实现可爱糖果数字时间特效
2016/12/30 Javascript
基于vue.js快速搭建图书管理平台
2017/10/29 Javascript
vue中nextTick用法实例
2019/09/11 Javascript
Node.js API详解之 readline模块用法详解
2020/05/22 Javascript
JS图片懒加载技术实现过程解析
2020/07/27 Javascript
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
Python3 适合初学者学习的银行账户登录系统实例
2017/08/08 Python
浅谈python在提示符下使用open打开文件失败的原因及解决方法
2018/11/30 Python
python实现感知机模型的示例
2020/09/30 Python
python 实现图片裁剪小工具
2021/02/02 Python
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
香港网上花店:FlowerAdvisor香港
2019/05/30 全球购物
Eton丹麦官网:精美的男式衬衫
2020/05/27 全球购物
物流专业毕业生推荐信范文
2013/11/18 职场文书
网络事业创业计划书范文
2014/01/09 职场文书
酒店管理毕业生自我鉴定
2014/03/02 职场文书
yy司仪主持词
2014/03/22 职场文书
抽奖活动主持词
2014/03/31 职场文书
党员活动日总结
2014/05/05 职场文书
超市促销活动总结
2014/07/01 职场文书
小学教师师德师风演讲稿
2014/08/22 职场文书
MyBatis-Plus 批量插入数据的操作方法
2021/09/25 Java/Android