2010-02-15 77 views
8

当我用Magento开发时,发现如果我不在PHP代码下面使用HTML,我不需要放置php结束标记(?>)。它是否安全,为什么我们不把末端标签?它有用吗?跳过PHP结束标记

回答

8

The official stance

注意:在文件的结尾PHP块的结束标记为可选的,并且在某些情况下省略其使用包括()或要求()时是有帮助的,所以不希望文件末尾不会出现空格,并且您仍然可以在稍后将响应添加到响应中。如果使用输出缓冲也很方便,并且不希望在包含文件生成的部分末尾看到添加的不需要的空白。

2

是的,这很有用,因为你不能忘记\ n之类的奇怪字符在关闭标签之后(这可以防止发送cookie等)。在Zend框架中,他们也不使用结束标签(作为项目代码标准)。

6

它创建类文件/代码文件的时候,因为它很容易在文件的最后添加一个额外的空格或换行,这可能会使输出缓冲header()输出是非常有用的。由于PHP在文件中将EOF看作是关闭?>,因此依靠EOF没有任何危险。