It's recommended不应该在文件末尾放置一个PHP结束标记,以避免各种不良错误。但是,是否需要关闭PHP标记?
答案 0 :(得分:17)
如果要从PHP代码块切换到纯文本输出,则需要结束标记。
以下是一个例子:
<?php
// PHP code block
?>
<!-- plain text output and not processed by PHP -->
</body>
答案 1 :(得分:9)
BTW如果你想通过跳过结束标记来知道你阻止了什么错误。由于Zend的解释没有详细说明。
PHP不需要它,省略它可以防止意外将尾随空格注入响应。
这意味着如果你想使用header()将一些人重定向到其他位置或以任何方式更改HTTP标头......那么如果某个文件以这样的方式结束,你就不能并且会收到错误。
}
?>
//space here
因为这个空间将作为内容输出到网站,然后您无法修改标题。
答案 2 :(得分:5)
这是我个人的“规则”:
答案 3 :(得分:3)
只有当你想在php块之后输出非php代码时才需要它。
答案 4 :(得分:1)
当您不只是在脚本中使用PHP时: - )
答案 5 :(得分:1)
作为一般规则,我总是添加结束标记,因为这是我的问号手指全天锻炼的唯一时间。那个糟糕的问号在PHP中没有爱; - )
但严重的是,在不需要时添加结束标记实际上会导致真正令人困惑的错误。因为这个原因,我整个下午都把头发拉了一下。麻烦通常是因为在结束标记之后有空格,您无法轻易看到,但它们被解释为响应主体的一部分。如果您将此文件包含在另一个想要稍后发送自定义标头的脚本中,那么这是个坏消息。在脚本开始发送响应主体后,您无法发送标头信息,因此这些小的不可见空格会导致脚本失败。