2024 PHP Conference Japan

指令分隔

如同 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 '我們省略了最後的結尾標籤';

注意事項:

檔案結尾的 PHP 區塊結尾標籤是可選的,在某些情況下省略它是有幫助的,例如使用 includerequire 時,這樣可以避免在檔案結尾出現不必要的空白,並且您仍然可以在之後添加響應標頭。如果您使用輸出緩衝,並且不希望在包含的檔案所產生的部分的結尾看到添加的不必要的空白,這也很方便。

新增註解

使用者貢獻的註解 3 則註解

Krishna Srikanth
18 年前
不要誤解

<?php echo '省略結尾標籤';



<?php echo '省略結尾標籤';
<
p>但 HTML 仍然可見</p>

第二個會產生錯誤. 如果您在程式碼之後沒有更多 HTML 要寫,請省略 ?>
M1001
2 年前
您也可以在一行中寫入多個語句,只需用分號分隔,例如

<?php
echo "a"; echo "b"; echo "c";
# 輸出將是 "abc" 且沒有錯誤
?>
moonlander12341234 at gmail dot com
8 個月前
一位來自 Stack Overflow 的使用者對結尾換行符號有一個很好的解釋,簡而言之:

<?= "Hello" ?>
Jello

會輸出:

HelloJello

這意味著 ?> 標籤中的隱式換行符號不存在,但是可以簡單地將其添加到程式碼中,例如:

<?= "Hello" ?>

Jello

之間的空格充當結尾標籤後的換行符號
To Top