Время чтения ~ 1 мин. / 234 просмотра / 0 комментариев / Январь 10, 2024, 20:05

В этом уроке вы узнаете о логическом операторе И (AND) в PHP и как использовать его для создания сложных логических выражений.

Введение

Логический оператор AND принимает два операнда и возвращает true, если оба операнда истинны; в противном случае возвращает false.

В PHP для представления логического оператора И (AND) используется ключевое слово and:

expression1 and expression2

Следующая таблица иллюстрирует результат действия оператора and:

expression1expression2expression1 and expression2
truetruetrue
truefalsefalse
falsetruefalse
falsefalsefalse

Поскольку ключевые слова PHP нечувствительны к регистру, операторы AND и and одинаковы:

expression1 AND expression2

По соглашению оператор and следует использовать в нижнем регистре.

Помимо ключевого слова and, PHP использует && в качестве логического оператора И (AND):

expression1 && expression2

Операторы && и and возвращают одинаковый результат. Единственное различие между ними заключается в их приоритетах.

Оператор and имеет более высокий приоритет, чем оператор &&. Приоритет оператора определяет порядок вычислений в PHP.

Примеры оператора И (AND) в PHP

Предположим, вы хотите предоставить скидку клиентам, купившим более трех товаров по цене выше 99. Чтобы определить, получат ли клиенты скидку или нет, вы можете использовать логический оператор AND следующим образом:

<?php

$price = 100;
$qty = 5;

$discounted = $qty > 3 && $price > 99;


var_dump($discounted);

Вывод:

bool(true)

Если вы измените значение $qty на 2, значение $discounted будет ложным false, например:

<?php

$price = 100;
$qty = 2;

$discounted = $qty > 3 && $price > 99;


var_dump($discounted);

На практике вы будете использовать логический оператор И в конструкциях if, if-else, if-elseif, while и do-while.

Короткое замыкание в PHP

Когда значение первого операнда является ложным, логический оператор AND понимает, что результат также должен быть ложным. В этом случае он не вычисляет второй операнд. Этот процесс называется коротким замыканием.

См. следующий пример:

<?php

$debug = false;
$debug && print('Демонстрация оператора И в PHP!');

Как это работает:

  • Вначале определяется переменная $debug и инициализируется значением false.
  • Затем используется логический оператор AND для объединения переменной $debug и print(). Поскольку $debug имеет значение false, PHP не вычисляет вызов функции print().

Если вы измените $debug на true, то увидите сообщение в выводе:

<?php

$debug = true;
$debug && print('Демонстрация оператора И в PHP!');

Вывод:

Демонстрация оператора И в PHP!

Подытожим

  • Используйте логический оператор И (AND) в PHP (and, &&), чтобы объединить два логических выражения и вернуть true, если оба выражения истинны; в противном случае, возвращается false.
  • Логический оператор И (AND) поддерживает короткое замыкание.
Теги:
php
Операторы сравнения - PHP
Оператор ИЛИ (OR) - PHP
Оператор НЕ (NOT) - PHP
Январь 11, 2024, 17:05
В этом уроке вы узнаете, как использовать логический оператор отрицания НЕ (NOT) (!) в PHP для создания сложных логических выражений.
Конструкция if elseif - PHP
Январь 13, 2024, 18:40
В этом уроке вы узнаете о конструкции if elseif в PHP, которая позволяет выполнять блоки кода в зависимости от нескольких логических выражений.
Логический тип (Boolean) - PHP
Январь 05, 2024, 15:41
В этом уроке вы узнаете о логическом типе данных и логических значениях PHP.
Конструкция switch - PHP
Январь 14, 2024, 20:52
В этом уроке вы узнаете о конструкции switch в PHP, который выполняет блок кода, сопоставляя выражение с несколькими значениями.
Null - PHP
Январь 07, 2024, 12:42
В этом уроке вы узнаете о типе PHP NULL и о том, как проверить, имеет ли переменная значение null или нет.