суббота, 2 декабря 2017 г.

Альтернативный синтаксис PHP

Рассмотрим примеры использования синтаксиса. Например, для вывода переменной внутри 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
/* Некорректный способ: */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;
?>

Комментариев нет:

Отправить комментарий

Materialize-css. Футер

Сделаем футер и прижмем к низу страницы. Документация: https://materializecss.com/footer.html