判断是不是微信浏览器?根据HTTP_USER_AGENT  

微信内置了浏览器,许多时候我们不想微网站被普通浏览器访问怎么办?可以通过浏览器的判断

在iPhone下,返回

Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2

在Android下,返回

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 ,并且有版本号,也可以判断手机类型为iPhone还是Android

但是上面的写法可能存在低版本不识别,咋办呢?自己该该版本,例如

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

然后在程序中判断一下就好了,例如php

<?php  $useragent = $_SERVER['HTTP_USER_AGENT']; 
if (strpos($useragent, 'MicroMessenger') === false) { 
echo " 非微信浏览器禁止访问"; 
} else { 
echo "微信浏览器允许访问"; 
} ?>

好吧,让人诟病的window phone跳出来了说你歧视,然后有了下面的代码

<?php 
$useragent = addslashes($_SERVER['HTTP_USER_AGENT']); 
if(strpos($useragent, 'MicroMessenger') === false && strpos($useragent, 'Windows Phone') === false ){
echo " 非微信浏览器禁止访问www.30c.org"; 
}else{ 
echo "微信浏览器允许访问www.30c.org"; 
} ?>

我们都听说过矛与盾的故事,这么没人性,开发时或者我就想用chrome看看微网站行不行?

chrome–>扩展中心–>User-Agent Switcher–>install,然后把最上面的字符串加上就好了.

image

这个百度地图看起来别扭不?

image

欢迎大佬支持本博客的发展 -- Donate --

本文链接:判断是不是微信浏览器?根据HTTP_USER_AGENT

转载声明:本站文章若无特别说明,皆为原创,转载请注明来源:三十岁,谢谢!^^


分享到:          
  1. 没有评论

  1. 没有通告