【发布时间】:2011-08-23 08:46:23
【问题描述】:
我在一个 php 文件中有这个简单的代码...
<div id="main">
<?php
if {
....
}
else {
....
}
?>
</div>
现在在 mozilla 和 IE 中呈现如下...
<div class="main">
<!-- HTML PARSED BY PHP -->
</div>
但在谷歌浏览器中它呈现这样。
<div id="main">
<!-- HTML PARSED BY PHP -->
div>
如果我更改 php 文件,使 php 结束标记 (?>) 在 else 语句的结尾大括号之后像这样...
}?>
而不是……
}
?>
然后chrome像这样渲染最后一个div......
/div>
chrome 和 php 是否存在问题,如何阻止它发生。 由于这个奇怪的问题,很难验证任何页面。
【问题讨论】:
-
不是浏览器呈现 php,这就是为什么它被称为预处理超文本。您的 html 被发送到浏览器而不是 PHP。
-
这是个垃圾问题吗?为什么会这样?
-
那么为什么在浏览器中不一样呢?如果发送同一个文件,结果怎么会不一样?
-
这显然不应该发生,这可能与您的 PHP 处理器没有正确解析文件有关吗?
-
PHP 没有被解析;结果是无效的 HTML。损坏的结果将在不同浏览器中呈现不同。
标签: php parsing google-chrome