Рассмотрим примеры использования синтаксиса. Например, для вывода переменной внутри HTML структуры нужно написать:
<?php echo $string; ?>
В альтернативном варианте это можно записать как: <?= $string ?>
Управляющие структуры также могут быть записаны в альтернативном виде.
Цикл foreach можно записать так:
<? foreach ($array as $item): ?>
<li><?=$item?></li>
<? endforeach; ?>
Цикл for:
<? for ($item = 1; $item <= 10; $item ++): ?>
<li><?= $item ?></li>
<? endfor; ?>
Цикл while:
<? while ($item < 10): ?>
<li><?= $item ?></li>
<? endwhile; ?>
Условный оператор if-else:
<? if ($item > 10): ?>
Значение больше десяти.
<? elseif ($item < 10): ?>
Значение меньше десяти.
<? else: ?>
Значение равно десяти.
<? endif; ?>
Конструкция выбора switch-case:
<? switch ($item):
case 1: ?>
Значение равно 1.
<? break; ?>
<? case 2: ?>
Значение равно 2.
<? break; ?>
<? case 3: ?>
Значение равно 3.
<? break; ?>
<? default: ?>
Значение не известно.
<? endswitch; ?>
Источник: webformyself.
Замечание: elseif и else if будут равнозначны только при использовании фигурных скобок. Если используются синтаксис с двоеточием для определения условий if/elseif, вы не должны разделять else if на два слова, иначе это вызовет фатальную ошибку в PHP.
<?php echo $string; ?>
В альтернативном варианте это можно записать как: <?= $string ?>
Управляющие структуры также могут быть записаны в альтернативном виде.
Цикл foreach можно записать так:
<? foreach ($array as $item): ?>
<li><?=$item?></li>
<? endforeach; ?>
Цикл for:
<? for ($item = 1; $item <= 10; $item ++): ?>
<li><?= $item ?></li>
<? endfor; ?>
Цикл while:
<? while ($item < 10): ?>
<li><?= $item ?></li>
<? endwhile; ?>
Условный оператор if-else:
<? if ($item > 10): ?>
Значение больше десяти.
<? elseif ($item < 10): ?>
Значение меньше десяти.
<? else: ?>
Значение равно десяти.
<? endif; ?>
Конструкция выбора switch-case:
<? switch ($item):
case 1: ?>
Значение равно 1.
<? break; ?>
<? case 2: ?>
Значение равно 2.
<? break; ?>
<? case 3: ?>
Значение равно 3.
<? break; ?>
<? default: ?>
Значение не известно.
<? endswitch; ?>
Источник: webformyself.
Замечание: elseif и else if будут равнозначны только при использовании фигурных скобок. Если используются синтаксис с двоеточием для определения условий if/elseif, вы не должны разделять else if на два слова, иначе это вызовет фатальную ошибку в PHP.
<?php
/* Некорректный способ: */if($a > $b):
echo $a." больше, чем ".$b;
else if($a == $b): // Не скомпилируется.
echo "Строка выше вызывает фатальную ошибку.";
endif;
/* Корректный способ: */if($a > $b):
echo $a." больше, чем ".$b;
elseif($a == $b): // Заметьте, тут одно слово.
echo $a." равно ".$b;
else:
echo $a." не больше и не равно ".$b;
endif;
?>
Комментариев нет:
Отправить комментарий