来自:http://blog.ammrli.com/?p=1175
如何判断微信内置浏览器,首先需要获取微信内置浏览器的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
所以通过识别 MicroMessenger 这个关键字来确定是否微信内置的浏览器了。
通过 JavaScript 判断
function is_weixn(){
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;
}
【更新的有效代码】
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
</head>
<body>
<?php
$user_agent = $_SERVER[‘HTTP_USER_AGENT’];
if (strpos($user_agent, ‘MicroMessenger’) === false)
{
echo “非微信浏览器禁止浏览”;
} else
{
echo “微信浏览器,允许访问”;
preg_match(‘/.*?(MicroMessenger\/([0-9.]+))\s*/’, $user_agent, $matches);
echo ‘<br>你的微信版本号为:’.$matches[2];
}
?>
</body>