Логически операции в PHP

Нека разгледаме следния код:

php<?php
  $a = 1;
  $b = 2;
  
  if ($a == $b) {
    var_dump(true);
  } else {
    var_dump(false);
  }
?>

Както виждате, в този код се извършва сравнение на променливите a и b и, ако те са равни, в конзолата се извежда true, а ако не са равни - тогава false.

Тук е време да ви разкрия нещо неочевидно: всъщност конструкцията if не е задължителна за сравнение - самите оператори като ==, ===, !=, <, > и други връщат като резултат или true, или false.

Вижте пример:

php<?php
  var_dump(1 == 1); // ще изведе true
  var_dump(1 == 2); // ще изведе false
?>

Въз основа на написаното, кодът от началото на урока може да се пренапише по-просто:

php<?php
  $a = 1;
  $b = 2;
  
  var_dump($a == $b);
?>

Може да не извеждате резултата веднага, а да го присвоите на някаква променлива:

php<?php
  $a = 1;
  $b = 2;
  
  $res = $a == $b;
  var_dump($res);
?>
Задание 1

Нека са дадени следните променливи:

php<?php
  $a = 2 * (3 - 1);
  $b = 6 - 2;
?>

Използвайки оператора ==, разберете дали стойностите на тези променливи са равни или не.

Задание 2

Нека са дадени следните променливи:

php<?php
  $a = 5 * (7 - 4);
  $b = 1 + 2 + 7;
?>

Използвайки оператора >, разберете дали променливата $a е по-голяма от $b.

Задание 3

Нека са дадени следните променливи:

php<?php
  $a = 2 ** 4;
  $b = 4 ** 2;
?>

Използвайки оператора !=, разберете дали стойностите на тези променливи са различни или не.