PHP
Альтернативный синтаксис в PHP
Альтернативный синтаксис управляющих структур: (php.net)
Пример альтернативого синтаксиса для работы с условием if
Пример альтернативого синтаксиса для работы с циклом foreach
Альтернативный синтаксис для управляющей структуры switch
Альтернативный синтаксис для циклов for
Альтернативный синтаксис для цикла while
Альтернативный синтаксис управляющих структур
Альтернативный синтаксис поддерживается для нескольких управляющих структур, а именно для if, while, for, foreach и switch.
В каждом случае основной формой альтернативного синтаксиса является замена открывающей фигурной скобки на двоеточие (:), а закрывающей скобки на endif, endwhile, endfor, endforeach или endswitch в зависимости от используемой управляющей структуры.
Смешивание синтаксиса в одном и том же блоке управления не поддерживается
Пример альтернативого синтаксиса для работы с условием if
Пример альтернативного синтаксиса:
<?php $a = 5; if ($a == 5) : ?>
A равно 5
<?php endif ; ?>
- блок HTML будет показан только если переменная $a равна 5.
Альтернативный синтаксис также применяется и к else и elseif.
Структура if с elseif и else в альтернативном формате:
<?php
$a = 7;
if ($a == 5):
echo "a равно 5";
echo "...";
elseif ($a == 6):
echo "a равно 6";
echo "!!!";
else :
echo "a не равно ни 5 ни 6";
endif ;
// выведет: 'a не равно ни 5 ни 6'
?>
Пример вывода html-кода для управляющей структуры if, используя aльтернативный синтаксис if - endif:
<?php
$bool = true;
$str1 = 1;
$str2 = 2;
$str3 = 3;
?>
- двоеточие, после условия, фактически является аналогом открывающей фигурной скобке;
- оператор endif является аналогом закрывающей скобке;
- поскольку у нас используются переменные, внутри html-кода выведим их, открыв конструкцию php.
<?php if ( $bool ) : ?>
<table class = "table" border="1">
<tr>
<td><?php echo $str1 ?></td>
<td><?php echo $str2 ?></td>
<td><?php echo $str3 ?></td>
</tr>
</table>
<?php endif ;?>
выведет таблицу:
1 2 3
Пример альтернативого синтаксиса для работы с циклом foreach
<?php
$names = [
'Ivan' => 'Ivanov' ,
'Petr' => 'Petrov' ,
'Sidor' => 'Sidorov' ,
];
?>
<?php foreach ( $names as $key => $name ) : ?>
Name: <?php echo $key ?>, Surname: <?php echo $name ?>
<?php endforeach; ?>
выведет:
Name: Ivan, Surname: Ivanov
Name: Petr, Surname: Petrov
Name: Sidor, Surname: Sidorov
Альтернативный синтаксис для управляющей структуры switch
<?php
$var = 3;
switch ($var):
case 1:
echo 'Variable = 1';
break;
case 2:
echo 'Variable = 2';
break;
case 3:
echo 'Variable = 3';
break;
default:
echo 'Something else...'; // Что-то еще ...
endswitch;
// выведет: Variable = 3
?>
Альтернативный синтаксис для циклов for
PHP также поддерживает альтернативный синтаксис с двоеточием для циклов for:
for (expr1 ; expr2 ; expr3) :
тело цикла
...
endfor ;
- где for - ключевое слово,
двоеточие : - альтернатива открывающей фигурной скобки
- expr1;- первое выражение - это инициализация счетчика;
- expr2; - второе выражение - это проверка условия ;
- expr3- третье выражение - это изменение счетчика.
- endfor - альтернатива закрывающей фигурной скобки
Альтернативный синтаксис для цикла while
Пример:
<?php
$i = 1;
while ($i <= 10):
echo '<br>';
echo $i;
$i++;
endwhile ;
// выведет цифры от 1 до 10
?>
- если условие изначально не выполняется, то блок кода не выполнится ни разу.
Наверх Наверх