PHP 5.6.0 released

Separación de instrucciones

Como en C o en Perl, PHP requiere que las instrucciones terminen en punto y coma al final de cada sentencia. La etiqueta de cierre de un bloque de código de PHP automáticamente implica un punto y coma; no es necesario usar un punto y coma para cerrar la última línea de un bloque de PHP. La etiqueta de cierre del bloque incluirá la nueva línea final inmediata si está presente.

<?php
    
echo 'Esto es una prueba';
?>

<?php echo 'Esto es una prueba' ?>

<?php echo 'Hemos omitido la última etiqueta de cierre';

Nota:

La etiqueta de cierre de un bloque de PHP es opcional al final de un fichero, y en algunos casos es útil omitirla cuando se usa include o require, para que no se produzcan espacios en blanco al final de los ficheros, y así se podrán añadir aún cabeceras para la respuesta posterior. También es práctico si se utiliza la salida del buffer y no se desean espacios en blanco no deseados al final de las partes generadas por ficheros incluídos.

add a note add a note

User Contributed Notes 8 notes

up
77
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
4
pbarney
2 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
0
Karthik SWOT
3 days ago
The Second line
<?php echo 'This is a test' ?>
will be working properly without throw any errors.

You don't need to put ; at the end of statement if we using a single statement.

If we add more statement only it should be add like this,
<?php
echo 'This is a test'
echo 'This is second line'
?>

See, here also no need to put ; at the end of second line. Because there is no additional statements after.
up
0
shojibur at gmail dot com
4 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
-31
james dot d dot noyes at lmco dot com
6 years ago
If you are embedding this in XML, you had better place the ending '?>' there or the XML parser will puke on you.  XML parsers do not like processing instructions without end tags, regardless of what PHP does.

If you're doing HTML like 90% of the world, or if you are going to process/interpret the PHP before the XML parser ever sees it, then you can likely get away with it, but it's still not best practice for XML.
up
-20
Jamal
6 months ago
@ oliwer dot urfriend at gmail dot com
It will give error as you you did not add a clsoing tag nor semi colon..here <?php echo '<p>But html is still visible</p>'
up
-18
sriharsha dot suripeddi1250 at gmail dot com
4 months ago
Hi,  you missed the ";" in the <p> tag. please check that.
up
-41
oliwer dot urfriend at gmail dot com
7 months ago
<?php echo 'Ending tag excluded'; ?>
with
<?php echo 'Ending tag excluded';?>
<?php echo '<p>But html is still visible</p>'

if in this example i omitted the last closing tag then code gives error :(
To Top