Operații logice în PHP

Să ne uităm la următorul cod:

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

După cum vedeți, în acest cod se execută o comparație a variabilelor a și b și, dacă acestea sunt egale, în consolă se afișează true, iar dacă nu sunt egale - atunci false.

Aici a venit momentul să vă dezvălui ceva neevident: de fapt construcția if nu este obligatorie pentru comparație - operatorii înșiși de tipul ==, ===, !=, <, > și alții returnează ca rezultat fie true, fie false.

Uitați-vă la exemplu:

php<?php
  var_dump(1 == 1); // va afișa true
  var_dump(1 == 2); // va afișa false
?>

Pe baza celor scrise, codul de la începutul lecției poate fi rescris într-un mod mai simplu:

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

Puteți să nu afișați rezultatul imediat, ci să îl atribuiți unei variabile:

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

Să fie date următoarele variabile:

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

Folosind operatorul ==, aflați dacă valorile acestor variabile sunt egale sau nu.

Задание 2

Să fie date următoarele variabile:

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

Folosind operatorul >, aflați dacă variabila $a este mai mare decât $b.

Задание 3

Să fie date următoarele variabile:

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

Folosind operatorul !=, aflați dacă valorile acestor variabile sunt diferite sau nu.