我应该关闭我的PHP标签吗?

时间:2011-04-18 10:46:43

标签: php

  

可能重复:
   Why do some scripts omit the closing PHP tag, '?>'?

我在PHP框架中看到(我不记得是哪个)他们没有关闭页面底部的php标记(?>)。

为什么这样,我也应该这样做?

5 个答案:

答案 0 :(得分:36)

如果它是包含 HTML的PHP​​文件,则不要关闭标记。

这可以阻止您在文件末尾意外添加空格,从而调用浏览器输出,以及扩展标题等,这可能会导致痛苦的世界。

答案 1 :(得分:13)

您看到的框架很可能是Zend Framework。来自their manual的代码样式部分:

  

对于仅包含PHP代码的文件,   结束标记(“?>”)永远不会   允许的。 PHP不要求它,   并省略它'防止   意外注入尾随白色   空间进入响应。

答案 2 :(得分:4)

基本上它意味着PHP文件不会有尾随空格。

如果你包含一个带有尾随空格的文件,并尝试设置header()或cookies或类似的东西,那么尾随空格会引起问题。

答案 3 :(得分:1)

您不必,只要它也是该脚本的结尾。

?>添加到文件的末尾不起任何作用,它只是向filesize添加了几个字节。

答案 4 :(得分:1)

我个人不喜欢这样做,因为它在过去引起了一些意想不到的麻烦。如果在关闭标记后有空白区域,可能会导致一些麻烦(例如将此空白区域输出到浏览器,如果您正在解析XML,则会令人不愉快),而这些麻烦很难调试。 / p>