Documentación offline PHP master

Sintaxis alternativa

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

Sintaxis alternativa#

PHP ofrece otra manera de agrupar instrucciones dentro de un bloque, para las funciones de control if, while, for, foreach y switch. En cada caso, el principio es reemplazar la llave de apertura por dos puntos (:) y la llave de cierre por, respectivamente, endif;, endwhile;, endfor;, endforeach;, o endswitch;.

<?php if ($a == 5): ?>
A igual 5
<?php endif; ?>

En el ejemplo anterior, el bloque HTML "A igual 5" se incluye dentro de un if utilizando esta nueva sintaxis. Este código HTML solo se mostrará si la variable $a es igual a 5.

Esta otra sintaxis también funciona con else y elseif. El siguiente ejemplo muestra una estructura con un if, un elseif y un else utilizando esta otra sintaxis:

<?php
if ($a == 5):
    echo "a igual 5";
    echo "...";
elseif ($a == 6):
    echo "a igual 6";
    echo "!!!";
else:
    echo "a no vale ni 5 ni 6";
endif;
?>

[!NOTE] No se puede utilizar diferentes sintaxis en el mismo bloque de control.

[!WARNING] Cualquier visualización (incluyendo espacios) entre una estructura switch y el primer case producirá un error de sintaxis. Por ejemplo, esto no es válido:

``` // ...

```

Mientras que esto es válido, ya que la última nueva línea después de la estructura switch se considera parte de la etiqueta de cierre ?> y, por lo tanto, no se muestra nada entre switch y case:

``` ...

```

Ver también while, for, y if para otros ejemplos.