Контролни структури на PHP: Ако не е така, превключете регистър

⚡ Умно обобщение

Контролните структури и цикли определят пътя, който ще поеме една PHP програма, и повтарят блокове от код ефективно. Това ръководство обяснява структурите за вземане на решения if-else и switch, след което обхваща циклите for, while, do-while и foreach, които конкурентите очакват в тази тема.

  • 🔀 Контролен поток: Контролната структура избира кой код се изпълнява въз основа на условие, превръщайки една права последователност в логика, управлявана от решения.
  • 🔤 Ако-Иначе: Структурата if-else изпълнява един блок, когато условието е истина, и резервен блок, когато е невярно.
  • 🧮 Корпус за превключвател: switch сравнява една стойност с няколко етикета на case и изпълнява съвпадащия блок или стойността по подразбиране, когато няма съвпадение.
  • 🔁 Преглед на циклите: Циклите повтарят блок от код, което ви спестява писането на едни и същи оператори многократно.
  • 🔢 Броене на цикли: за и докато повтаряйте, докато условието е валидно, идеално, когато знаете или track колко итерации са необходими.
  • 📦 Цикъл Foreach: foreach преминава през всеки елемент от масив, без самостоятелно да управлява индексен брояч.
  • 🤖 AI Assist: Инструментите с изкуствен интелект могат да рефакторират дълги if-else вериги в switch или match оператори и да помогнат за коригиране на безкрайни цикли.

PHP контролни структури и цикли

Какво е контролна структура?

Code Изпълнението може да бъде групирано в категории, както е показано по-долу.

  • Следващ – това включва изпълнение на целия код в реда, в който е написан.
  • Решение – това включва правенето на избор, предвид редица опции. Изпълненият код зависи от стойността на условието.

Контролната структура е блок от код, който определя пътя на изпълнение на програма в зависимост от стойността на зададеното условие.

Нека сега разгледаме някои от контролните структури, които PHP поддържа.

PHP АКО Друго

Ако… тогава… другото е най-простата структура за управлениеТой оценява условията, използвайки булева логика.

Кога да използвате if… then… else

  • Имате блок от код, който трябва да се изпълни само ако определено условие е вярно
  • Имате две възможности и трябва да изберете една.
  • If… then… else if… се използва, когато трябва да изберете повече от две опции и трябва да изберете една или повече

Синтаксис. Синтаксисът за if… then… else е:

<?php
if (condition is true) {
    block one
} else {
    block two
}
?>

ТУК,

  • "ако (условието е вярно)„е структурата на управление
  • "блок едно” е кодът, който трябва да бъде изпълнен, ако условието е вярно
  • още е резервният вариант, ако условието е невярно
  • "блок две” е блокът от код, който се изпълнява, ако условието е невярно

Как работи. Показаната по-долу блок-схема илюстрира как работи контролната структура if…then…else.

PHP АКО Друго

Нека видим това в действие. Кодът по-долу използва „if… then… else“, за да определи по-голямата стойност между две числа.

<?php

$first_number = 7;

$second_number = 21;

if ($first_number > $second_number){

echo "$first_number is greater than $second_number";

}else{

echo "$second_number is greater than $first_number";

}

?>

Изход:

21 is greater than 7

Калъф за превключване на PHP

Калъф за превключване е подобен на ако… тогава… иначе контролна структура.

Само това изпълнява единичен блок код в зависимост от стойност на състоянието.

Ако не е изпълнено нито едно условие, се изпълнява блокът от код по подразбиране.

Той има следния основен синтаксис.

<?php
switch(condition){

case value:

// block of code to be executed

break;

case value2:

// block of code to be executed

break;

default:

// default block code

break;

}
?>

ТУК,

  • „превключване(…){…}“ е блоковият код на структурата за управление
  • „Case value: case…“ са блоковете от код, които трябва да бъдат изпълнени в зависимост от стойността на условието
  • „по подразбиране:“ е блокът от код, който ще се изпълни, когато никоя стойност не съответства на условието

Как работи

Показаната по-долу блок-схема илюстрира как работи структурата за управление на превключвателя.

Калъф за превключване на PHP

Практически пример

Кодът по-долу използва структурата за управление на превключвателя, за да покаже съобщение в зависимост от деня от седмицата.

<?php

$today = "wednesday";

switch($today){

case "sunday":

echo "pray for us sinners.";

break;

case "wednesday":

echo "ladies night, take her out for dinner";

break;

case "saturday":

echo "take care as you go out tonight.";

break;

default:

echo "have a nice day at work";

break;

}

?>

Изход:

ladies night, take her out for dinner

PHP цикли

Циклите са управляващи структури, които повтарят блок от код, докато дадено условие остава вярно. Те ви спестяват писането на един и същ оператор многократно. PHP поддържа четири типа цикли: for, while, do-while и foreach. За по-подробно ръководство вижте специалното ръководство. Урок за PHP цикъл.

PHP за цикъл

Цикълът for се използва, когато предварително знаете колко пъти трябва да се изпълни кодът. Той комбинира брояча, условието и инкремента на един ред.

<?php
for ($i = 0; $i < 5; $i++) {
    echo $i;
}
?>

Изход:

01234

PHP цикъл „While“

Цикълът while повтаря блок, докато условието му остава изпълнено. Условието се проверява преди всяка итерация, така че тялото може да се изпълни нула пъти.

<?php
$i = 0;
while ($i < 5) {
    echo $i;
    $i++;
}
?>

Изход:

01234

PHP Do-While цикъл

Цикълът do-while е подобен на цикъла while, но проверява условието след тялото. Това гарантира, че блокът ще се изпълни поне веднъж.

<?php
$i = 0;
do {
    echo $i;
    $i++;
} while ($i < 5);
?>

Изход:

01234

PHP цикъл Foreach

Цикълът foreach е предназначен за масиви. Той преминава през всеки елемент, без да е необходимо да се управлява индексен брояч.

<?php
$colors = array("red", "green", "blue");
foreach ($colors as $color) {
    echo $color . " ";
}
?>

Изход:

red green blue

Въпроси и Отговори

Използвайте switch, когато сравнявате една променлива с много фиксирани стойности, тъй като е по-лесен за четене от дълга if-else верига. Използвайте if-else за диапазони, сложни условия или сравнения, включващи различни променливи.

break спира цикъла напълно и преминава към кода след него. continue пропуска останалата част от текущата итерация и преминава към следващата, без да завършва цикъла изцяло.

match е модерна алтернатива на switch, въведена в PHP 8. Връща стойност, използва строго сравнение, не се нуждае от break оператори и хвърля грешка, ако няма съвпадения с arm, което го прави по-безопасен и по-сбит.

Да. Изкуственият интелект може да пренапише дълга if-else верига като еквивалентен switch или PHP 8 израз за съвпадение, keeping логиката е идентична, като същевременно кодът е по-кратък и по-лесен за четене. Тествайте резултата след това.

Да. Изкуственият интелект може да провери състоянието и брояча на цикъла ви, да забележи липсващо увеличение или условие, което никога не става невярно, и да предложи поправката, така че цикълът да завърши по предназначение.

Обобщете тази публикация с: