首页 > 开发 > php > 正文

php的结束标签问题

2017-09-06 15:07:42  来源:网友分享

有人说php的结束标签可以不要
比如

<?php
echo 'hello world';

我看了一下,对于纯php文件是可以的。
貌似很多高手都是省略的。还有一堆理由。
但是我宁愿作为一个低手,还是用结束标签。

解决方案

php的结束标签,在一些编码规范里面,纯php脚本文件里是必须忽略的,包括我在内是非常赞同这种做法的。
为什么呢?因为php只能运行在php标签里面的脚本,在脚本之外的所有字符,包括你看不见的空格或者回车,制表符号,都是作为输出内容会response到客户端的。这样就有可能会产生意想不到的事情。比如说joyqi说的问题,不过这个还好问题不是很大,但是假如你在一个文件里面使用了header函数,这个文件同时又包含了另外一个文件,并且被包含的文件的php标签外有空字符,这个时候会报header already send的错误。
为了避免这种错误,在编码规范里面经常会规定库文件,或者一些class文件等只有纯php代码的文件是不能加结尾的?>结束符的
参考 http://framework.zend.com/manual/en/c... 中的general section下面那句话