Php 在Chrome中,测试IE状态

Php 在Chrome中,测试IE状态,php,internet-explorer,google-chrome,Php,Internet Explorer,Google Chrome,我想做一件简单的事情,就是:如果有人在internet explorer中浏览我的网站,那么我网站的一个div必须显示在一个表单中,如果不是,那么它将显示在另一个表单中 我正在尝试一些简单的方法来测试条件,但它不起作用。 这是密码 $IE = 0; echo "<!--[if lte IE 8]>" ; $IE = 1; echo "<![endif]-->"; die("IE is: " . " " . $IE); $IE=0; 回声“; 死亡(“IE是:”.$I

我想做一件简单的事情,就是:如果有人在internet explorer中浏览我的网站,那么我网站的一个div必须显示在一个表单中,如果不是,那么它将显示在另一个表单中

我正在尝试一些简单的方法来测试条件,但它不起作用。 这是密码

$IE = 0;
echo "<!--[if lte IE 8]>" ;
$IE = 1;
echo "<![endif]-->";

die("IE is: "  . " " . $IE);
$IE=0;
回声“;
死亡(“IE是:”.$IE);
使用chrome时,它总是显示IE为1


我做错什么了吗?

web开发中的一个基本问题是,需要区分服务器上发生的事情和浏览器中发生的事情,以及两者之间的关系

PHP在服务器上运行,浏览器中有条件的IE注释。两者之间是通过网络发送的HTML文件

您的脚本将在服务器上执行。结果是:

<!--[if lte IE 8]><![endif]-->IE is:   1

你已经用php代码弄乱了一点java脚本。 如果您想根据服务器用户使用的内容向客户端返回不同的html,请检查$_SERVER['HTTP_user_AGENT']


在php代码中使用
phpinfo()
,或者在那里简单地调用
echo$\u服务器['HTTP\u USER\u AGENT']
,然后在各种浏览器中打开页面,看看它们是如何呈现给您的。

这是什么类型的代码?您将html注释与php混合在一起,它不是这样工作的。如果您想在php中检查浏览器,请使用
$\u SERVER['USER\u AGENT']
,但请注意,它可能会被欺骗。您正在尝试混合客户端和服务器端代码。这不可能奏效。即使没有这一点,Chrome也无法识别条件注释。我想你会对PHP和Javascript感到困惑。
$IE
代码是PHP,它不受用户运行的浏览器的影响。我知道它很短。我想做的是使用$IE变量,然后绘制一个具有不同ID的div(如果是IE,则div将有一个名称,在css中,该名称将以特定形式显示,如果不是,则名称将是other,以便我可以以不同的方式绘制它)。
$IE = (bool) strpos($_SERVER['USER_AGENT'], 'MSIE') ;