PHP 8.4.2 Released!

Separação de instruções

Como em C ou Perl, o PHP requer que as instruções sejam terminadas com um ponto e vírgula no final de cada declaração. A tag de fechamento de um bloco de código PHP implica automaticamente em um ponto e vírgula; a última linha de um bloco PHP não precisa ser terminada com um ponto e vírgula. A tag de fechamento do bloco incluirá uma nova linha em seguida, se estiver presente.

Exemplo #1 Exemplo mostrando a tag de fechamento incluindo uma nova linha final

<?php echo "Algum texto"; ?>
Sem nova linha
<?= "Mas agora há uma nova linha" ?>

O exemplo acima produzirá:

Algum textoSem nova linha
Mas agora há uma nova linha

Exemplos de entrada e saída do interpretador PHP:

<?php
echo 'Isto é um teste';
?>

<?php echo 'Isto é um teste' ?>

<?php echo 'A última tag de fechamento foi omitida';

Nota:

A tag de fechamento de um bloco PHP no final de um arquivo é opcional e, em alguns casos, omiti-la é útil ao usar include ou require, assim espaços em branco indesejados não ocorrerão no final dos arquivos, e ainda será possível adicionar cabeçalhos à resposta posteriormente. Isso também é útil ao usar o buffer de saída, para evitar a inclusão de espaços em branco indesejados no final das partes geradas pelos arquivos incluídos.

adicione uma nota

Notas Enviadas por Usuários (em inglês) 3 notes

up
65
Krishna Srikanth
18 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
6
M1001
2 years ago
You are also able to write more than one statement in one line, just separating with a semicolon, example:

<?php
echo "a"; echo "b"; echo "c";
#The output will be "abc" with no errors
?>
up
1
moonlander12341234 at gmail dot com
8 months ago
A user from stack overflow had a nice explanation for the trailing newline, simply put,

<?= "Hello" ?>
Jello

would output,

HelloJello

meaning that implicit newline from the ?> tag is not there, however one can simply add that to the code such as,

<?= "Hello" ?>

Jello

the space between acts as a new line after the closing tag
To Top