(PHP 4, PHP 5, PHP 7)
PHP oferuje alternatywną składnię dla niektórych z jego struktur kontrolnych; a mianowicie dla if, while, for, foreach, i switch. W każdym wypadku podstawową formą alternatywnej składni jest zmiana otwierającego nawiasu klamrowego na dwukropek (:) i zamykającego nawiasu odpowiednio na endif;, endwhile;, endfor;, endforeach; lub endswitch;.
<?php if ($a == 5): ?>
A jest równe 5
<?php endif; ?>
W powyższym przykładzie, blok HTML "A jest równe 5" został zagnieżdżony w wyrażeniu if zapisanym w alternatywnej składni. Blok HTML zostanie wyświetlony tylko jeżeli $a jest równe 5.
Alternatywna składnia odnosi się także do else i elseif. Następujący przykład pokazuje strukturę if z użyciem elseif i else, zapisaną w alternatywnym formacie:
<?php
if ($a == 5):
echo "a jest równe 5";
echo "...";
elseif ($a == 6):
echo "a jest równe 6";
echo "!!!";
else:
echo "a nie jest równe 5 ani 6";
endif;
?>
Informacja:
Mieszanie rożnych składni w tym samym bloku kontrolnym nie jest możliwe.
Dowolne wyjście (nawet białe znaki) pomiędzy wyrażeniem switch, a pierwszym case, spowoduje powstanie błędu składniowego. Poniższy przykład jest nieprawidlowy:
<?php switch ($foo): ?>
<?php case 1: ?>
...
<?php endswitch ?>
Z kolei ten jest poprawny, gdyż końcowa nowa linia po wyrażeniu switch jest uznawana za część zamykającego ?> i w rezultacie nic nie jest wyświetlane między switch i case:
<?php switch ($foo): ?>
<?php case 1: ?>
...
<?php endswitch ?>
Zobacz także while, for i if, aby zobaczyć więcej przykładów.