今天要给大家分享一段PHP代码,该代码的功能是用来判断访客是否移动端浏览器访问,该功能的实现思路是通过HTTP_X_WAP_PROFILE、HTTP_VIA、HTTP_USER_AGENT等信息来判断访客是否通过移动端浏览器访问PHP网站。以下是PHP代码:/**

* 是否移动端访问访问

*

* @return bool

*/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;

}

// 脑残法,判断手机发送的客户端标志,兼容性有待提高

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'

);

// 从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')

{            return true;

}

}

return false;

}

代码比较完整,有兴趣的同学可以多做一些测试,有任何bug可以在评论中留言。

移动端浏览器识别PHP,PHP判断访客是否移动端浏览器访问相关推荐

  1. WordPress 如何判断访客浏览器显示不同内容

    WordPress 如何判断访客浏览器 主题模板适当位置添加调用: <?phpglobal $is_IE;if ($is_IE) {echo '您正在使用不安全的IE浏览器,请使用现代浏览器,浏 ...

  2. php判断访客语言,php实现获取及设置用户访问页面语言类

    本文实例讲述了php实现获取及设置用户访问页面语言类,分享给大家供大家参考.具体分析如下: 该实例User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取 ...

  3. 在企业访客管理中引入人脸识别系统有哪些应用?

    随着科技的发展,在企业办公场景有越来越多的智能终端产品应用,为企业管理向信息化.智能化.现代化管理助力,推动企业向智慧办公趋势发展.那么,在企业访客管理中引入人脸识别系统有哪些应用? 访客预约管理 可 ...

  4. java判断当前浏览器类型_[Java教程]判断用户请求时使用的浏览器类型

    [Java教程]判断用户请求时使用的浏览器类型 0 2016-09-01 15:00:04 在进行微信公众账号开发的时候,其中很大一块是微站点的开发,我们需要知道当前的浏览器是微信内置的浏览器,那么如 ...

  5. 【Jquery】Jquery判断客户端请求来源于PC端还是移动端

    前言 随着移动时代趋于主流,很多网站都开发了PC端和移动端,那么通过Jquery判断客户请求来源于PC端还是移动端显得非常重要 实现 //判断函数 function is_mobile() {var ...

  6. 【探花交友DAY 09】最近访客和FastDFS实现小视频功能

    1. 访客功能 1.1 功能分析 在用户的首页,如果某一个用户查看过当前用户的详细信息,那么就会显示最近来访的访客.这一功能类似于QQ空间中的访客功能. 访客功能实际上分为了三大部分 在用户查询某一个 ...

  7. 客服系统对接微信公众号-访客在聊天界面扫码-临时访客绑定公众号OpenID可接收客服回复消息通知...

    访客在线咨询有以下几个问题: 1. 访客打开聊天窗口,一般情况下都是临时访客,只存在于当前浏览器. 2. 浏览器清理缓存,或者换一个浏览器,访客ID会重新生成就会变成一个新访客. 3. 访客咨询后,关 ...

  8. 网站统计中的PV(访问量):UV(独立访客):IP(独立IP)的定义与区别

    --------首先来看看ip.uv和pv的定义---------- PV(访问量):即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次. UV(独立访客):即Unique Vis ...

  9. 独立IP、特产浏览量(PV)、访问次数(VV)、独立访客(UV)有什么区别?

    转自 http://blog.sina.com.cn/s/blog_a5fc76bb0101073a.html 访问次数(VV):记录所有访客1天内访问了多少次您的特产,相同的访客有可能多次访问您的特 ...

  10. 如何从访客属性分析网站用户群

    阿里巴巴.今日头条的崛起标志着互联网时代已经进入了用户导向的时代,包括淘宝天猫的"千人千面",今日头条的资讯推荐机制,这都帮助了他们的企业在市场中取得大规模的占有. 所以,面对现在 ...

最新文章

  1. python3.6.5安装-linux安装python3.6.5
  2. 《剑指offer》c++版本 5.替换空格
  3. 1.Spring Cloud Alibaba教程:简介
  4. hdu 4090(搜索+可行性剪枝)
  5. 额外篇 | ggplot (上)
  6. 【最详细解析】1070 结绳 (25分)_18行代码AC
  7. Asterisk使用数据库配置方法
  8. Layui layer详细参数解释说明
  9. linux mysql搭建禅道详细教程_linux安装禅道的步骤
  10. getconf 取系统配制 --CPU
  11. Python 父类调用子类方法
  12. C# ToString()格式笔记
  13. adsl拨号php,Linux_Linux系统创建ADSL拨号上网方法介绍,在使用linux创建adsl拨号连接之 - phpStudy...
  14. java和python爬虫那个好_java和python在爬虫方面的优势和劣势是什么?
  15. 截止失真放大电路_数字电路基础(一)
  16. 快速成为脚本小子_什么是脚本小子? 如何成为脚本小子?
  17. Shell if 条件判断
  18. 湖北2021高考成绩排序查询,2021年湖北高考成绩排名查询系统 湖北高考位次排名表...
  19. python如何调用谷歌搜图api_python爬虫——selenium+chrome使用代理
  20. 怎样从《几何原本》到《独立宣言》?

热门文章

  1. 动态修改Log4J和Logback的日志级别
  2. 【转载】Unity3D导入FBX模型的相关属性介绍
  3. 敏捷方法软件开发生命周期: 优点和缺点
  4. matlab自适应滤波器 LMS算法
  5. node.js安装配置教程
  6. Java方法——方法的重载
  7. 动态规划(dp)的总结
  8. Ps,Lr,Pr,Ae,Au,C4D,达芬奇调色
  9. 一些BIM的相关概念
  10. php开发h5游戏教程,HTML5游戏框架cnGameJS开发实录-实现动画原理