PHP 5.6.0RC3 is available


同 C 或 Perl 一样,PHP 需要在每个语句后用分号结束指令。一段 PHP 代码中的结束标记隐含表示了一个分号;在一个 PHP 代码段中的最后一行可以不用分号结束。如果后面还有新行,则代码段的结束标记包含了行结束。

echo "This is a test";

<?php echo "This is a test" ?>

<?php echo 'We omitted the last closing tag';


文件末尾的 PHP 代码段结束标记可以不要,有些情况下当使用 include 或者 require 时省略掉会更好些,这样不期望的空白符就不会出现在文件末尾,之后仍然可以输出响应标头。在使用输出缓冲时也很便利,就不会看到由包含文件生成的不期望的空白符。

add a note add a note

User Contributed Notes 7 notes

Krishna Srikanth
7 years ago
Do not mis interpret

<?php echo 'Ending tag excluded';


<?php echo 'Ending tag excluded';
p>But html is still visible</p>

The second one would give error. Exclude ?> if you no more html to write after the code.
2 years ago
If you want to keep the newline after a closing tag in the output, just add a space after the closing tag, and the newline will not be ignored.
shojibur at gmail dot com
3 months ago
You have been missed semicolon.

Keep in mind if you did not put closing tag, must put semicolon at the end ,

<?php echo '<p>But html is still visible</p>';
5 months ago
@ oliwer dot urfriend at gmail dot com
It will give error as you you did not add a clsoing tag nor semi <?php echo '<p>But html is still visible</p>'
james dot d dot noyes at lmco dot com
6 years ago
If you are embedding this in XML, you had better place the ending '?>' there or the XML parser will puke on you.  XML parsers do not like processing instructions without end tags, regardless of what PHP does.

If you're doing HTML like 90% of the world, or if you are going to process/interpret the PHP before the XML parser ever sees it, then you can likely get away with it, but it's still not best practice for XML.
oliwer dot urfriend at gmail dot com
6 months ago
<?php echo 'Ending tag excluded'; ?>
<?php echo 'Ending tag excluded';?>
<?php echo '<p>But html is still visible</p>'

if in this example i omitted the last closing tag then code gives error :(
sriharsha dot suripeddi1250 at gmail dot com
3 months ago
Hi,  you missed the ";" in the <p> tag. please check that.
To Top