Do not mis interpret
<?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"; ?>
No newline
<?= "But newline now" ?>
上の例の出力は以下となります。
Some textNo newline But newline now
PHP パーサの開始と終了の例:
<?php
echo 'テストです';
?>
<?php echo 'テストです' ?>
<?php echo '終了タグを省略しました';
注意:
ファイル終端における PHP ブロックの終了タグはオプション(任意)です。 include や require を利用する際には、 終了タグを省略する方が無難です。というのは、そうすることでファイルの最後に 予期せぬ空白文字があらわれてしまうことを防げますし、後でレスポンスに ヘッダを付加することも可能となるからです。また、出力バッファリングを 使用しており、include したファイルの生成する部分の最後に余計な空白を つけたくない場合などにも便利です。
Do not mis interpret
<?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.