Syntaxe alternative
(PHP 4, PHP 5)
PHP propose une autre manière de rassembler des instructions à l'intérieur d'un bloc, pour les fonctions de contrôle if, while, for, foreach et switch. Dans chaque cas, le principe est de remplacer l'accolade d'ouverture par deux points (:) et l'accolade de fermeture par, respectivement, endif;, endwhile;, endfor;, endforeach;, ou endswitch;.
<?php if ($a == 5): ?> A égal 5 <?php endif; ?>
Dans l'exemple ci-dessus, le bloc HTML "A égal 5" est inclus à l'intérieur d'un if en utilisant cette nouvelle syntaxe. Ce code HTML ne sera affiché que si la variable $a est égale à 5.
Cette autre syntaxe fonctionne aussi avec le else et elseif. L'exemple suivant montre une structure avec un if, un elseif et un else utilisant cette autre syntaxe :
<?php if ($a == 5): echo "a égale 5"; echo "..."; elseif ($a == 6): echo "a égale 6"; echo "!!!"; else: echo "a ne vaut ni 5 ni 6"; endif; ?>
Note:
Vous ne pouvez pas utiliser différentes syntaxes dans le même bloc de contrôle.