Операторы if else PHP

В этой статье мы расскажем, как использовать операторы  if else PHP.

Условные операторы в PHP

В PHP есть несколько операторов, которые можно использовать для принятия решений:

  • Оператор if;
  • Оператор if ... else;
  • Оператор if ... elseif .... else;
  • Оператор switch ... case.

Ниже мы рассмотрим каждый из этих операторов.

Оператор if в PHP

Оператор if в PHP (как и PHP elseif) используется для выполнения блока кода только в том случае, если указанное условие имеет значение true. Это простейший условный оператор PHP, его можно записать следующим образом:

if(условие){
    // Исполняемый код
}

Приведенный ниже код выводит «Хорошего уик-энда!», если сегодня пятница:

Пример:

<?php
$d = date("D");
if($d == "Fri"){
    echo "Хорошего уик-энда!";
}
?>

Оператор if ... else PHP

Можно усложнить процесс принятия решений, предоставив альтернативный вариант. Для этого к if нужно добавить оператор else. Оператор if ... else позволяет выполнить один блок кода, если указанное условие оценивается как true, а другой блок кода, если false.

Его можно записать следующим образом:

if(условие){
    // Код, который будет выполнен, если условие истинно
} else{
    // Код, который будет выполнен, если условие ложно
}

Приведенный ниже код выводит «Хорошего уик-энда!», если сегодня пятница. Иначе выводиться «Хорошего дня!».

Пример:

<?php
$d = date("D");
if($d == "Fri"){
    echo "Хорошего уик-энда!";
} else{
    echo "Хорошего дня!";
}
?>

Оператор if ... elseif ... else

if...elseif...else оператор (не путать с PHP elseif else) используется для объединения нескольких операторов if ... else.

if(условие){
    // Код, который будет выполнен, если условие истинно
} elseif(условие){
    // Код, который будет выполнен, если условие истинно
} else{
    // Код, который будет выполнен, если условие ложно
}

Приведенный ниже код выводит «Хорошего уик-энда!», если сегодня пятница или «Хорошего воскресенья!» если сегодня воскресенье. В противном случае будет выводиться «Хорошего дня!».

Пример:

<?php
$d = date("D");
if($d == "Fri"){
    echo "Хорошего уик-энда!";
} elseif($d == "Sun"){
    echo "Хорошего воскресенья!";
} else{
    echo "Хорошего дня!";
}
?>

Тернарный оператор PHP

Тернарный оператор предоставляет сокращенный способ написания операторов if ... else и elseif PHP. Тернарный оператор обозначается символом вопросительного знака (?). Он принимает три операнда: условие для проверки, результат для true и результат для false.

Чтобы понять, как работает этот оператор, рассмотрим следующие примеры:

Пример:

<?php
if($age < 18){
    echo 'Ребенок'; // Выводит Ребенок, если возраст меньше 18
} else{
    echo 'Взрослый'; // Выводит Взрослый, если возраст больше 18

}
?>

Используя тернарный оператор, тот же код можно записать более компактно:

Пример:

<?php echo ($age < 18) ? 'Ребенок' : 'Взрослый'; ?>

Тернарный оператор в приведенном выше примере выбирает значение слева от двоеточия (т. е. «Ребенок»), если условие оценивается как true (т. е. если $age меньше 18) и значение справа от двоеточия (т.е. «Взрослый»), если условие оценивается как false.

Примечание. Код, написанный с использованием тернарного оператора, может быть трудно читаемым. Тем не менее, он предоставляет способ компактной записи операторов if-else и PHP elseif.

Оператор нулевого коалесцирования в PHP7

В PHP 7 был введен новый оператор нулевого коалесцирования (??), который можно использовать в качестве сокращенного обозначения тройного оператора в сочетании с функцией isset().

Чтобы лучше понять, как это работает, рассмотрим приведенный ниже код. Он извлекает значение $_GET['имя']. Если оно не существует или равно NULL, возвращается 'anonymous'.

Пример:

<?php
$name = isset($_GET['имя']) ? $_GET['имя'] : 'anonymous';
?>

Используя оператор нулевого коалесцирования вместо PHP elseif примера, этот же код можно записать в следующем виде:

Пример:

<?php
$name = $_GET['имя'] ?? 'anonymous';
?>

Второй вариант синтаксиса является более компактным и простым в написании.

Пожалуйста, оставляйте ваши мнения по текущей теме статьи. Мы очень благодарим вас за ваши комментарии, лайки, подписки, дизлайки, отклики!

Пожалуйста, оставляйте свои отзывы по текущей теме материала. Мы очень благодарим вас за ваши комментарии, лайки, подписки, отклики, дизлайки!

Вадим Дворниковавтор-переводчик статьи «PHP If…Else Statements»