Oddzielanie instrukcji

Podobnie jak C i Perl, PHP wymaga aby instrukcje były zakończone średnikiem, na końcu każdego wyrażenia. Zamykający znacznik bloku kodu PHP automatycznie implikuje średnik; nie musisz mieć średnika zamykającego ostatnią linię z bloku PHP. Zamykający znacznik dla bloku będzie zawierać bezpośrednio następującą nową linie jeśli taka istnieje.

<?php
    
echo 'To jest test';
?>

<?php echo 'To jest test' ?>

<?php echo 'Pomineliśmy ostatni zamykający znacznik';

Informacja:

Zamykający znacznik bloku PHP na końcu pliku jest opcjonalny, i w niektórych przypadkach pominięcie jego jest pomocne kiedy używamy include lub require, tak więc niechciane białe znaki nie będą znajdować się na końcu pliku, i ciągle będzie możliwe dodanie nagłówków do odpowiedzi. To jest także poręczne jeśli używasz buferowania wyjścia, i nie chciałbyś zobaczyć dodanych niechcianych białych znaków na końcu cześci generowanej przez includowany plik.

add a note add a note

User Contributed Notes 4 notes

up
93
Krishna Srikanth
8 years ago
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.
up
9
pbarney
3 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.
up
1
shojibur at gmail dot com
6 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>';
up
-8
Kalimuthu
2 months ago
One thing to remember is, if you decide to omit the closing PHP tag, then the last line of the file should be ended with semi colon. If you add the closing tag then last line doesn't need to end with semi colon.

<?php
echo "First line";
echo
"Last line"

The above code throws error as it neither has closing tag nor semicolon ending. So it should be replaced with either of the below two

<?php
echo "First line";
echo
"Last line";

or

<?
php
echo "First line";
echo
"Last line" ?>
To Top