Заставь свои скрипты реагировать с помощью if и match, затем повторяй действия через for, foreach и while.
Открыть этот урок в KodokonУсловие позволяет скрипту выбрать путь: «если это правда, сделай вот это, иначе сделай что-то другое». Ключевое слово if проверяет выражение, которое даёт true или false, с помощью операторов сравнения: > (больше), < (меньше), >=, <=, === (равно, то же значение И тот же тип) и !== (не равно). elseif добавляет ещё одну проверку, если предыдущая не прошла, а else срабатывает, когда ни одна проверка не удалась. Проверки читаются сверху вниз: побеждает первая истинная.
<?php
$temperature = 12;
if ($temperature > 25) {
echo "It's hot.";
} elseif ($temperature > 15) {
echo "It's mild.";
} else {
echo "Grab a jacket!";
}Когда ты сравниваешь одну и ту же переменную с несколькими конкретными значениями, выражение match выглядит изящнее. Оно сравнивает переменную с каждым случаем (строгое сравнение, значение и тип) и сразу возвращает значение, которое можно сохранить в переменную. Случай default служит подстраховкой, когда ни одно значение не подошло.
<?php
$day = "saturday";
$message = match ($day) {
"saturday", "sunday" => "It's the weekend!",
"monday" => "Hang in there, back to work.",
default => "Have a good weekday.",
};
echo $message;Цикл повторяет блок инструкций несколько раз, без копирования кода. Цикл for идеален, когда число проходов известно заранее. Он читается в трёх частях, разделённых точкой с запятой: старт ($i = 1), условие продолжения ($i <= 5, цикл идёт, пока это верно) и шаг ($i++, который прибавляет 1 к $i на каждом проходе).
<?php
for ($i = 1; $i <= 5; $i++) {
echo "Round number {$i}<br>";
}Ещё два цикла дополняют набор инструментов. foreach обходит массив (список значений, о нём в следующем уроке) и выдаёт тебе каждый элемент один за другим. while повторяет свой блок до тех пор, пока его условие остаётся истинным: изменить ситуацию внутри цикла, чтобы он в итоге остановился, - твоя задача.
<?php
$fruits = ["apple", "pear", "kiwi"];
foreach ($fruits as $fruit) {
echo "Fruit: {$fruit}<br>";
}
$countdown = 3;
while ($countdown > 0) {
echo "{$countdown}...<br>";
$countdown--;
}
echo "Go!";else?match от if?while навсегда останется истинным?