需求分析:

在我现有的项目中,使用MVC模型,移动端和PC端主方法都放在了C中,移动端使用

is_mobile函数来区分移动端和PC端,在移动端需要区分微信浏览器和非微信浏览器,所以经过研究和实验,发现了以下的方法:

区分移动端和PC端:

$_SERVER['HTTP_USER_AGENT']  的作用:用来检查浏览页面的访问者在用什么操作系统(包括版本号)浏览器(包括版本号)和用户个人偏好的代码,所以使用了枚举来判断是移动端还是PC端

function is_mobile() {

$user_agent = $_SERVER['HTTP_USER_AGENT'];

$mobile_agents=Array(

"240x320","acer","acoon","acs","abacho","ahong","airness","alcatel",

"amoi","android","anywhereyougo.com","applewebkit/525","applewebkit/532",

"asus","audio","aumic","avantogo","becker","benq","bilbo","bird","blackberry",

"blazer","bleu","cdm-","compal","coolpad","danger","dbtel","dopod","elaine",

"eric","etouch","fly","fly_","fly","go.web","goodaccess","gradiente","grundig",

"haier","hedy","hitachi","htc","huawei","hutchison","inno","ipaq","ipod",

"jbrowser","kddi","kgt","kwc","lenovo","lg","lg2","lg3","lg4","lg5","lg7",

"lg8","lg9","lg","lge","lge9","longcos","maemo","mercator","meridian",

"micromax","midp","mini","mitsu","mmm","mmp","mobi","mot-",

"moto","nec-","netfront","newgen","nexian","nfbrowser","nintendo","nitro",

"nokia","nook","novarra","obigo","palm","panasonic","pantech",

"philips","phone","pg","playstation","pocket","pt","qc","qtek","rover",

"sagem","sama","samu","sanyo","samsung","sch-",

"scooter","sec-","sendo","sgh-","sharp","siemens",

"sie-","softbank","sony","spice","sprint","spv",

"symbian","talkabout","tcl-","teleca","telit","tianyu","tim-",

"toshiba","tsm","up.browser","utec","utstar","verykool",

"virgin","vk-","voda","voxtel","vx","wap","wellco","wig browser",

"wii","windows ce","wireless","xda","xde","zte"

);

$is_mobile = false;

foreach ($mobile_agents as $device) {

if (stristr($user_agent, $device)) {

$is_mobile = true;

break;

}

}

return $is_mobile;

}

 判断是微信浏览器还是非微信浏览器:

function isWeixin() {

if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) {

return true;

} else {

return false;

}

}

判断当前是移动端还是PC端 判断是微信浏览器还是非微信浏览器相关推荐

  1. js判断移动端,pc端,安卓,苹果浏览器的方法

    js 判断安卓或者ios 之indexOf方式(一) //判断访问终端 var browser={versions:function(){var u = navigator.userAgent, ap ...

  2. 关于网页js判断“客户端设备类型是移动端还是PC端“的解决方法?

    文章目录 网页中js如何判断设备类型是手机端还是pc端? 有时候会在项目中遇到设备类型判断的问题,这里和大家分享一个js判断设备类型的办法: userAgent 属性的值 代码块 网页中js如何判断设 ...

  3. js 判断移动端还是pc端,ios或者android

    js 判断移动端还是pc端,ios或者android 法一: function IsPC(){ var userAgentInfo = navigator.userAgent;var Agents = ...

  4. vue 判断移动端、pc端

    判断移动端或pc端 经常在项目中会有支持 pc 与手机端需求.并且pc与手机端是两个不一样的页面.这时就要求判断设置,根据不同的设置跳转不同的路由. 先写个方法: //APP.vue isMobile ...

  5. C#和JQ判断移动端还是PC端

    判断移动端还是PC端浏览网页可以使用两种方法: 1.在C#语句进行判断 /// <summary>/// 判断是移动端/// </summary>/// <returns ...

  6. java 判断手机访问_java后台如何判断是移动端还是pc端的访问请求

    java后台如何判断是移动端还是pc端的访问请求 主要是根据  HttpServletRequest request  中的请求头所带的参数 user-agent来获取: String userAge ...

  7. js判断客户端是移动端还是PC端

    //判断客户端是移动端还是pc端 //userAgent用户代理 function IsPC() { var userAgentInfo = navigator.userAgent; var Agen ...

  8. 移动端和pc端的区别

    PC端与移动端的区别 pc端与移动端从兼容性.事件处理.布局.动画处理上来说有五种区别 1.从兼容方面来说, PC考虑的是浏览器的兼容性,而移动端开发考虑的更多的是手机兼容性,因为目前不管是andro ...

  9. nginx配置区分移动端和PC端,访问不同域名

    在群里遇到一个朋友,想实现移动端和PC端访问相同域名,但是页面效果有区别(这里先排除自适应,因为他已经写完了两个项目,移动端和PC端分开写的),所以我就提供了如下方案:访问同一域名,在nginx里判断 ...

最新文章

  1. 2018-3-23论文一种新型智能算法--狼群算法(笔记三)实验分析单峰,多峰,可分和不可分函数
  2. c语言错误2064,VC错误: error C2064: term does not evaluate to a function
  3. 1个系统节拍 c语言_自己写的非抢占式嵌入式操作系统ATOS,全c语言,移植太......
  4. python3精要(18)-函数主要概念
  5. oracle 半连接 效率,关于oracle中的半连接
  6. kaggle的kernel-only比赛中出现Your Notebook cannot use internet access in this competition解决方案
  7. Activity Monitor 闪退 无法进入睡眠
  8. python except用法和作用_121个问题答对80%那么恭喜你,Python的高薪工作迟早有你一份...
  9. git撤销分支上代码的修改
  10. FullCalendar 一: 日程安排FullCalendar
  11. 有符号数与无符号数间的转换
  12. html5基础--audio标签元素
  13. TOMM2018_Unsupervised Person Re-identification: Clustering and Fine-tuning
  14. 企业税银数据深度分析(上)
  15. CStatic类简介
  16. 开源网站访问统计系统Piwik的基本使用
  17. C语言进阶 之 字符串函数(4)
  18. android swf webview,android webview播放swf文件
  19. 关于广义莫比乌斯反演的思考
  20. STM32的PWM和DAC练习中生成音频和波形

热门文章

  1. Programming Differential Privacy第三章
  2. Windows10 Emacs-SML开发环境搭建
  3. 创新实训(2)-Scrapy 学习
  4. [概率论]图像里的“白噪声”——电视机搜不到台时雪花斑点的形成原因 (不信谣,不传谣,与宇宙微波背景辐射没有任何关系)
  5. 简师网:公务员这些知识点需要背诵!
  6. 保护计算机数据库,保护Access2000数据库的安全
  7. 三极管3种基础接法比较
  8. OpenWRT学习笔记(1)环境部署代码下载及编译
  9. list序列化为string存入数据库
  10. 阿里巴巴三面总结,讲一讲从P5到P8需要掌握的知识点,本人已成功入职。