我有一个在IE 6和7中分解的PHP页面,因此我希望用户不使用IE。他们肯定会忽略警告和通知。所以作为一个解决方案,如果请求来自IE并且只显示不支持IE的行,我可以停止呈现页面吗?
我是php的新手,因此问题。 IE SUCKS!
答案 0 :(得分:2)
使用用户代理检查:
if(stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 6.0')) {
echo 'IE6'
};
if(stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 7.0')) {
echo 'IE7';
};
答案 1 :(得分:2)
您可以使用以下命令访问HTTP用户代理请求参数:$ _SERVER ['HTTP_USER_AGENT']。
$usingIE6 = (strpos( $_SERVER['HTTP_USER_AGENT'], 'MSIE 6.' ) !== FALSE);
if ($usingIE6) {
echo 'Please upgrade your browser';
exit;
}
使用情况统计数据在这里,IE 6占有7%的市场份额: http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2&qpcustomd=0
答案 2 :(得分:1)
是的,你可以:
if (isset($_SERVER['HTTP_USER_AGENT']) &&
(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false))
它只是一个片段,我知道IE不是最好的浏览器,但是一个优秀的程序员应该看看所有浏览器并使它们在所有浏览器中正确...这是Web开发中的实际困难。
答案 3 :(得分:1)
你可以从超全球$ _SERVER对HTTP_USER_AGENT进行测试;
但只是提供另一个选项(可能不是您需要的选项,因为它提取更多信息并且需要额外的文件)您可以使用依赖get_browser的browscap这是更多如果你有时需要关于访客的其他额外细节
答案 4 :(得分:0)
PHP有一个名为get_browser的函数,它将返回您需要的所有版本信息。
您还可以使用IE将能够解密的条件评论:
<!--[if lt IE 8]>Your browser is too old for this app. Please upgrade.<![endif]-->