Время чтения ~ 1 мин. / 69 просмотров / 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
Переменные в PHP
Декабрь 30, 2023, 22:12
В этом уроке вы узнаете, как использовать переменные PHP для хранения данных в программах.
Оператор НЕ (NOT) - PHP
Январь 11, 2024, 17:05
В этом уроке вы узнаете, как использовать логический оператор отрицания НЕ (NOT) (!) в PHP для создания сложных логических выражений.
Приведение типов - PHP
Январь 07, 2024, 21:16
В этом уроке вы узнаете о приведении типов в PHP, которое позволяет преобразовывать значение одного типа в другой.
Целое число (Integer) - PHP
Январь 05, 2024, 21:45
В этом уроке вы узнаете о типе PHP integer, который представляет целые числа в PHP.
Жонглирование типами (type juggling) - PHP
Январь 09, 2024, 11:20
В этом уроке вы узнаете о жонглировании типами (type juggling) в PHP и о том, как оно работает.