在php编程中,那个结尾的?>是否需要填写呢?
有的朋友说,不写结尾符可以防止注入,这个未有定论。
来看一个例子吧:
之前看到很多php文件中都不带php的结束符,今天看到看到一个demo,也刚好解释了不用?>结束符的好处。
以下是a.php截图:
注意第四行,第五行)
运行第二个文件,就会发现它会抛出警告说header already send out
主要是a.php在PHP结束符调用之后还有几行空白,那么PHP会认为它是HTML代码,这样是不是在调用session_start之前,就已经有header输出了嘛。
调用session_start之前,是不能有任何输出的,所以程序就会抛出警告。
如果使用?>,可能会在不经意间犯这个错误,当项目大,代码量大之后,要找到这样一个问题是很难的。
因此说,最好在PHP文件最后不要写?>,此为zend官方推荐的做法。