通常PHP文件,都是以<?php开始,以?>结束。而且,我一直以为?>是必不可少的。来到新浪微博实习之后,看到有些PHP文件的结尾是没有?>的。故产生疑问。
对这个问题查了一下资料,现总结如下:
(1)纯PHP代码文件中,?>不是必须的。
(2)省略?>的好处在于,当某个文件被其他文件引用时,可以避免输出一些不可见的字符,从而影响session、header
a.php
<?php
//code
?>
//这里有看不见的字符,空格或者回车
b.php
<?php
include("a.php");
session_start();
?>
这种情况下,b.php就会报错。
因此建议,在纯PHP代码文件中,省略?>。
注:如有不准确的地方,欢迎批评指正。