备注:基于网络上内容所有修改

在进行微信公众账号开发的时候,其中很大一块是微站点的开发,有时候我们需要知道当前的浏览器是微信内置的浏览器,从而做一些事情。

1、例如微信内置浏览器不显示底部导航,其他浏览器显示底部导航

2、例如表单是否从微信内置浏览器提交

3、等等

那么如何判断呢?

一、微信内置浏览器的 User Agent
如何判断微信内置浏览器,首先需要获取微信内置浏览器的User Agent。

$_SERVER["HTTP_USER_AGENT"] server数组来获取User Agent。

iPhone 通过微信内置浏览器访问网页时得到 User Agent 是:


Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10B329 MicroMessenger/5.0.1


Android 通过微信内置浏览器访问网页时得到 User Agent 是:

Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255


MicroMessenger 这个关键字来确定是否微信内置的浏览器了。
通过 JavaScript 判断

function          is_weixin(){        


                  var          ua = navigator.userAgent.toLowerCase();        


                  if         (ua.match(/MicroMessenger/i)==         "micromessenger"         ) {        


                  return          true         ;        


                  }          else          {        


                  return          false         ;        


                  }        


         }


通过 PHP 判断


function          is_weixin(){         


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


                  return          true;        


                  }            


                  return          false;        


         }