Menu
Coddy logo textTech

If - Else

Часть раздела Основы путешествия по PHP на Coddy — урок 29 из 71.

Иногда вам нужно, чтобы ваш код выполнял одно действие, когда условие истинно, и что-то другое, когда оно ложно. Блок else позволяет обрабатывать оба случая.

Добавьте else после вашего блока if, чтобы указать, что происходит, когда условие ложно:

<?php
$age = 15;

if ($age >= 18) {
    echo "You can vote";
} else {
    echo "You cannot vote yet";
}
?>

Так как $age равно 15, условие ложно, поэтому PHP выполняет блок else и выводит "You cannot vote yet".

Для более чем двух вариантов объединяйте условия в цепочку с помощью elseif:

<?php
$score = 75;

if ($score >= 90) {
    echo "Grade: A";
} elseif ($score >= 80) {
    echo "Grade: B";
} elseif ($score >= 70) {
    echo "Grade: C";
} else {
    echo "Grade: F";
}
?>

PHP проверяет каждое условие сверху вниз и выполняет первый блок, который соответствует условию. Как только соответствие найдено, он пропускает все остальные условия. В данном случае число 75 не проходит первые две проверки, но проходит $score >= 70, поэтому выводится «Grade: C».

challenge icon

Задание

Легко

Прочитайте два целых числа из входных данных: temperature и hour (в 24-часовом формате, 0-23).

Определите соответствующее сообщение на основе следующих условий:

  • Если температура ниже 0, выведите Freezing conditions
  • В противном случае, если температура ниже 15, выведите Cold weather
  • В противном случае, если температура ниже 25, выведите Pleasant weather
  • В противном случае выведите Hot weather

Затем, на новой строке, выведите приветствие в зависимости от часа:

  • Если час меньше 12, выведите Good morning!
  • В противном случае, если час меньше 18, выведите Good afternoon!
  • В противном случае выведите Good evening!

Пример:

Если входные данные 20 и 9, вывод должен быть следующим:

Pleasant weather
Good morning!

Если входные данные -5 и 14, вывод должен быть следующим:

Freezing conditions
Good afternoon!

Попробуйте сами

<?php
// Чтение входных данных
$temperature = intval(fgets(STDIN));
$hour = intval(fgets(STDIN));

// TODO: Напишите свой код ниже
// Определите сообщение о погоде на основе температуры

// Определите приветствие на основе часа

?>
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы