判断是不是微信浏览器?根据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,然后把最上面的字符串加上就好了.
这个百度地图看起来别扭不?
分享到: | |
没有评论