Урок 22 из 29
В прогрессе

22php Альтернативный синтаксис управляющих структур

Урок
Материалы

Альтернативный синтаксис управляющих структур ¶

(PHP 4, PHP 5, PHP 7, PHP 8)

PHP предлагает альтернативный синтаксис для некоторых его управляющих структур, а именно: ifwhileforforeach и switch. В каждом случае основной формой альтернативного синтаксиса является изменение открывающей фигурной скобки на двоеточие (:), а закрывающей скобки на endif;endwhile;endfor;endforeach; или endswitch; соответственно.

<?php if ($a == 5): ?>
A равно 5
<?php endif; ?>

В приведённом выше примере, блок HTML «A равно 5» вложен внутрь структуры if, написанной с альтернативным синтаксисом. Блок HTML будет показан только если переменная $a равна 5.

Альтернативный синтаксис также применяется и к else и elseif. Ниже приведена структура if с elseif и else в альтернативном формате:

<?php
if ($a == 5):
echo "a равно 5";
echo "...";
elseif ($a == 6):
echo "a равно 6";
echo "!!!";
else:
echo "a не равно ни 5 ни 6";
endif;
?>

Замечание:

Смешивание синтаксиса в одном и том же блоке управления не поддерживается.

Внимание

Любой вывод (включая пробельные символы) между выражением switch и первым case приведут к синтаксической ошибке. Например, данный код не будет работать:

<?php switch ($foo): ?>
<?php case 1: ?>
...
<?php endswitch ?>

В то же время следующий пример будет работать, так как завершающий перевод строки после выражения switch считается частью закрывающего ?> и следовательно ничего не выводится между switch и case:

<?php switch ($foo): ?>
<?php case 1: ?>
...
<?php endswitch ?>

Смотрите также whilefor и if для дальнейших примеров.


HOME TASK

 Попробуйте что-нибудь написать с помощью If Switch for и foreach 

Альтернативный синтаксис управляющих структур