Логічні оператори

Логічні оператори призначені виключно для роботи з логічними виразами і повертають false або true.

Наведемо таблицю логічних операторів PHP:

Приклад Назва Результат
$a and $b Логічне “І” TRUE якщо $a і $b TRUE.
$a or $b Логічне “АБО” TRUE якщо або $a, або $b TRUE.
$a xor $b Виключаюче “АБО” TRUE якщо $a, або $b TRUE, але не обидва
! $a Заперечення TRUE якщо $a не TRUE.
$a && $b Логічне “І” TRUE якщо і $a, і $b TRUE.
$a || $b Логічне “АБО” TRUE якщо або $a, або $b TRUE.

Сенс двох різних варіантів для операторів “and” і “or” в тому, що вони працюють з різними пріоритетами.

Слід зауважити, що обчислення логічних виразів, що містять такі оператори, йде завжди зліва направо, при цьому, якщо результат уже очевидний (наприклад, false && щось завжди дає false), то обчислення обриваються, навіть якщо у виразі присутні виклики функцій. Наприклад, в операторі $ logic = 0 && (time ()> 100); стандартна функція time () ніколи не буде викликана.

Будьте обережні з логічними операціями – не забувайте про подвоєння символу. Зверніть увагу, що, наприклад, | і || – два абсолютно різних оператора, один з яких може потенційно повертати будь-яке число, а другий – тільки false і true.