在某些脚本中,我看到他们忽略了为脚本编写结束标记?>
。为什么我也应该这样做?
(我确信他们没有忘记它。)
答案 0 :(得分:173)
好吧,省略结束标记只是避免文件末尾的空格和其他字符的一种解决方案。例如,任何意外添加在结束标记后面的char都会在以后尝试修改标题信息时触发错误。
删除结束标记是一种“良好做法”,指的是许多编码指南。
答案 1 :(得分:82)
文件末尾的PHP块的结束标记是可选的,在某些情况下,在使用
include()
或require()
时省略它是有帮助的,因此最后不会出现不需要的空格对于文件,您仍然可以在以后向响应中添加标头。如果使用输出缓冲,它也很方便,并且不希望在包含的文件生成的部分的末尾看到添加的不需要的空格。
答案 2 :(得分:33)
如果文件是纯PHP代码,则最好省略PHP结束 标签在文件的末尾。这可以防止意外的空格或新的空格 在PHP结束标记之后添加的行,这可能会导致不需要的行 因为PHP会在没有时启动输出缓冲 来自程序员的意图在该点发送任何输出 脚本。
答案 3 :(得分:14)
他们这样做是为了避免在结束标记之后冒出空格的风险,这可能会阻止标题生效。
当然,这对于纯PHP文件也是如此。
答案 4 :(得分:7)
答案 5 :(得分:5)
PHP的现代版本在output_buffering
中设置了php.ini
标记。如果启用了输出缓冲,则可以在输出HTML后设置HTTP标头和cookie,因为返回的代码不会立即发送到浏览器。
这些示例在此上下文中仍然有效吗?
答案 6 :(得分:0)