Условные конструкции — ключевая особенность любого языка программирования, в том числе и PHP. Они позволяют задать условие и, в зависимости от его истинности, выполнить один или другой блок кода.
Ключевое слово if
Для создания условных конструкций используется ключевое слово if, за которым в круглых скобках следует само условие. Например:
if (5 == 5) {
echo "a == 5";
}
Обратите внимание: для проверки на равенство используется два знака равенства (==). Один знак (=) означает присваивание значения, а не сравнение. Прямое сравнение констант обычно не используется. Лучше создавать переменные и проверять их значения.
$a = 5;
if ($a == 5) {
echo "a == 5";
}
Если условие истинно, код внутри фигурных скобок {} выполняется. Если условие ложно — код игнорируется.
Операторы сравнения
Помимо равенства (==), можно использовать другие операторы сравнения:
- Неравенство: !=
- Больше: >
- Меньше: <
- Больше или равно: >=
- Меньше или равно: <=
Примеры:
$a = 6;
if ($a != 5) {
echo "a != 5";
}
if ($a > 5) {
echo "a > 5";
}
if ($a >= 5) {
echo "a >= 5";
}
Сравнение может проводиться не только с числами, но и со строками:
$str = "hello";
if ($str == "hello") {
echo "str == 'hello'";
}
if ($str != "world") {
echo "str != 'world'";
}
В случае строк операторы > и < не имеют смысла.
Оператор else
Оператор else позволяет указать блок кода, который будет выполнен, если условие в if оказалось ложным:
$str = "world";
if ($str == "hello") {
echo "str == 'hello'";
} else {
echo "str != 'hello'";
}
else не является обязательным и используется только по необходимости. Если у вас только одна строка кода внутри if или else, фигурные скобки можно опустить.
Оператор elseif
Для проверки нескольких условий последовательно используется оператор elseif. Он должен следовать за if и предшествовать else (если он есть):
$a = 47;
if ($a == 5) {
echo "a == 5";
} elseif ($a >= 5) {
echo "a >= 5";
} else {
echo "a < 5";
}
elseif проверяется только если предыдущее условие (if или elseif) было ложным.
Вложенные условия
Внутри условных операторов if, elseif и else можно размещать другие условные операторы, создавая вложенные конструкции. Однако, чрезмерная вложенность снижает читаемость кода.
Логические операторы || и &&
Для проверки нескольких условий внутри одного оператора if используются логические операторы:
- || (ИЛИ): Условие истинно, если хотя бы одно из условий истинно.
- && (И): Условие истинно, только если оба условия истинны.
Примеры:
$isGoodWeather = false;
$str = "hello";
if ($str != "hello" || $isGoodWeather == false) {
echo "First";
}
if ($str != "hello" && $isGoodWeather == false) {
echo "Second";
}
Проверку на true и false можно упростить:
if ($isGoodWeather) { // Эквивалентно if ($isGoodWeather == true)
//код
}
if (!$isGoodWeather) { // Эквивалентно if ($isGoodWeather == false)
//код
}
Условные операторы if, elseif, else, в сочетании с логическими операторами || и &&, являются мощным инструментом для управления потоком выполнения программы в PHP. Правильное их использование позволяет создавать гибкий и эффективный код.