Alternative syntax for control structures

Warning

Alternative syntax is deprecated as of PHP 4. Basically, it just generates unreadable code, and it gets very complicated when mixing it with the normal syntax. Although there are no plans to break this syntax, it cannot be ruled out that one day this will stop working. You are warned.

PHP offers an alternative syntax for some of its control structures; namely, if, while, for, foreach, and switch. In each case, the basic form of the alternate syntax is to change the opening brace to a colon (:) and the closing brace to endif;, endwhile;, endfor;, endforeach;, or endswitch;, respectively.


<?php if ($a == 5): ?>
A is equal to 5
<?php endif; ?>
     

In the above example, the HTML block "A = 5" is nested within an if statement written in the alternative syntax. The HTML block would be displayed only if $a is equal to 5.

The alternative syntax applies to else and elseif as well. The following is an if structure with elseif and else in the alternative format:


if ($a == 5):
    print "a equals 5";
    print "...";
elseif ($a == 6):
    print "a equals 6";
    print "!!!";
else:
    print "a is neither 5 nor 6";
endif;
     

See also while, for, and if for further examples.