不要误解
<?php echo 'Ending tag excluded';
with
<?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.
与 C 或 Perl 一样,PHP 要求指令在每个语句的末尾用分号终止。PHP 代码块的结束标记会自动隐含分号;您不需要在 PHP 代码块的最后一行使用分号来终止。代码块的结束标记将包含紧随其后的换行符(如果有)。
示例 #1 显示结束标记包含尾随换行符的示例
<?php echo "Some text"; ?>
无换行符
<?= "But newline now" ?>
上面的示例将输出
Some textNo newline But newline now
进入和退出 PHP 解析器的示例
<?php
echo 'This is a test';
?>
<?php echo 'This is a test' ?>
<?php echo 'We omitted the last closing tag';
注意:
文件末尾 PHP 代码块的结束标记是可选的,在某些情况下省略它在使用 include 或 require 时很有用,这样就不会在文件末尾出现不需要的空白,并且您仍然可以稍后将标头添加到响应中。如果您使用输出缓冲,并且不想在包含文件生成的部件末尾看到添加的不必要的空白,这也很方便。
不要误解
<?php echo 'Ending tag excluded';
with
<?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.
您也可以在一行中编写多个语句,只需用分号隔开,例如
<?php
echo "a"; echo "b"; echo "c";
#The output will be "abc" with no errors
?>
一位来自 stack overflow 的用户对尾随换行符有一个很好的解释,简单来说,
<?= "Hello" ?>
Jello
将输出:
HelloJello
这意味着来自 ?> 标记的隐式换行符不存在,但是您可以简单地将其添加到代码中,例如:
<?= "Hello" ?>
Jello
结束标记后的空格充当换行符