Логические операторы

Тренажер по PHP для пользователей с начальным уровнем подготовки.

Тренажер PHP

Логические операторы — это клей, который соединяет отдельные условия в сложные правила. С их помощью программа решает, нужно ли выполнить действие, если истинно "это И то", "это ИЛИ то", или когда условие "НЕ" является верным. Например, чтобы войти в систему, пользователь должен быть зарегистрирован И ввести правильный пароль. В этом тренажере мы разберем, как работают операторы `AND` (И), `OR` (ИЛИ), `NOT` (НЕ) и даже экзотический `XOR` (исключающее ИЛИ). Вы научитесь строить сложные логические цепочки, предсказывать их результат и избегать распространенных ошибок, связанных с приоритетом операторов. Готовы думать логически?

Список тем

Сопоставьте оператор и его название

id: 38926_task_compare_1

Давайте начнем с основ. Перед вами символы логических операторов и их официальные названия. Ваша задача — правильно сопоставить левую и правую колонки, чтобы каждый оператор нашел свое имя.

Сопоставьте строки в правой части с соответствующими строками в левой по порядковому номеру
Логическое "И" (оба условия истинны)
Логическое "ИЛИ" (хотя бы одно условие истинно)
Логическое "НЕ" (инвертирует значение)
Исключающее "ИЛИ" (истинно, если только одно из условий истинно, но не оба)
|| (or)
! (not)
xor
&& (and)
Сообщения
Проверить
Показать подсказку

Проверка доступа к контенту

id: 38926_task_replace_2

Чтобы получить доступ к секретному контенту, пользователь должен быть старше 18 лет И быть подписчиком ($isSubscriber === true). Дополните условие, вставив правильный логический оператор.

Заполните пропуски
$age = 25;
$isSubscriber = true;

if ($age > 18 input1S $isSubscriber) {
    echo "Доступ к секретному контенту открыт.";
} else {
    echo "Доступ закрыт.";
}
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Результат операции "ИЛИ"

id: 38926_task_give_result_3

Скидка предоставляется, если у клиента есть купон ИЛИ это его день рождения. В данном случае у клиента нет купона, но сегодня его день рождения. Что выведет код? Ответ должен быть одним числом.

Что должно получиться?
$hasCoupon = false;
$isBirthday = true;

echo ($hasCoupon || $isBirthday);
Сообщения
Проверить
Показать подсказку

Сила отрицания

id: 38926_task_predict_result_4

Оператор "НЕ" (!) инвертирует булево значение. В переменной `$isLoggedIn` хранится `true`. Что выведет `var_dump`, если применить к ней оператор отрицания? Выберите правильный вариант.

Выберите правильный вариант ответа
$isLoggedIn = true;

var_dump(!$isLoggedIn);
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру