Inegalitate după valoare și tip în PHP

Pe lângă operatorul != există și operatorul !==, care ține cont de tip la comparare. Să analizăm diferențele dintre ele cu exemple.

Să presupunem că cu operatorul != se compară două numere 3. Acest operator compară valorile verificând dacă ele NU sunt egale. Deoarece valorile noastre sunt egale, pe ecran se va afișa '-':

php<?php
  if (3 != 3) {
    echo '+++';
  } else {
    echo '---'; // se va executa acest lucru, deoarece valorile sunt egale
  }
?>

Să presupunem acum că una dintre valorile noastre este în ghilimele. În acest caz, operatorul != le va considera tot egale (deoarece valorile coincid, iar tipul nu este important pentru acest operator) și va afișa din nou '-':

php<?php
  if ('3' != 3) {
    echo '+++';
  } else {
    echo '---'; // se va executa acest lucru, deoarece valorile sunt egale
  }
?>

Să comparăm acum două numere 3 cu operatorul !==. Acesta le va considera tot egale și va afișa '-':

php<?php
  if (3 !== 3) {
    echo '+++';
  } else {
    echo '---'; // se va executa acest lucru, deoarece valorile sunt egale
  }
?>

Dar dacă luăm acum una dintre triple în ghilimele, atunci operatorul !== le va considera pe cele două triple inegale, deoarece, deși valorile lor coincid, tipurile lor sunt diferite:

php<?php
  if ('3' !== 3) {
    echo '+++'; // se va executa acest lucru, deoarece valorile NU sunt egale
  } else {
    echo '---';
  }
?>
Задание 1

Fără a rula codul, determinați ce se va afișa pe ecran:

php<?php
  $test1 = '3';
  $test2 = '3';
    
  if ($test1 != $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 2

Fără a rula codul, determinați ce se va afișa pe ecran:

php<?php
  $test1 = '3';
  $test2 = '3';
    
  if ($test1 !== $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 3

Fără a rula codul, determinați ce se va afișa pe ecran:

php<?php
  $test1 = 3;
  $test2 = '3';
    
  if ($test1 != $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 4

Fără a rula codul, determinați ce se va afișa pe ecran:

php<?php
  $test1 = 3;
  $test2 = '3';
    
  if ($test1 !== $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 5

Fără a rula codul, determinați ce se va afișa pe ecran:

php<?php
  $test1 = 3;
  $test2 = 2;
    
  if ($test1 !== $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>