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

18

至少Laravel建议你这样做。 - ankush981
5个回答

47
如果是一个不包含HTML的PHP文件,则不要关闭标签。

这可以防止您在文件末尾意外添加空格,从而触发浏览器输出,进而引起头部等问题,可能会带来很多麻烦。


17

你看到的框架很可能是Zend Framework。从他们的手册的代码风格部分可以看出:

对于只包含 PHP 代码的文件,永远不允许使用结束标记("?>")。它不是 PHP 所必需的,省略它可以防止在响应中意外注入尾随空格。


Yii框架也使用这种风格。 - David Costa

6

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

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


2

个人而言,我不建议这么做,因为过去曾经出现过一些意想不到的问题。如果在结束标签后有空格,可能会导致一些麻烦(比如将这些空格输出到浏览器中,在解析XML时会很不舒服),而且这些问题非常难以调试。


0

只要它也是该脚本的结尾,你就不必这样做。

在文件末尾添加?>没有任何作用,它只会增加几个字节的文件大小。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接