Zend Framework编码标准提到以下内容:
对于仅包含PHP代码的文件,绝不允许使用结束标记("?>").PHP不需要它,省略它可以防止意外地将尾随空格注入响应中.
Zend Framework编码标准:文件格式化
但是我确实记得听过一个问题(使用工具或可能包含?),其中文件需要有关闭标记.
有没有人知道你需要有关闭标签的任何问题(除了想要对称的开发者问题)或者它们通常是个坏主意?
尽可能删除结束标签可能是最好的做法.原因是因为如果你在php文件中的?>之外有任何字符(甚至是空格),如果在设置标题之前将字符发送到浏览器,它可以停止诸如标题之类的东西停止工作.
如果您使用关闭PHP标记,那么您可以轻松找到意外截断的文件(例如,尚未完全上传).
但是这个问题应该通过使文件系统和传输可靠而不是添加PHP"canary"标签来解决:)
另一个可能的原因是PEAR编码标准需要它.他们需要它,因为他们需要它,你不能质疑PEAR编码标准.