Nerovnost podle hodnoty a typu v PHP

Kromě operátoru != existuje také operátor !==, který bere v úvahu typ při porovnávání. Podívejme se na rozdíly mezi nimi na příkladech.

Nechť jsou pomocí operátoru != porovnávány dvě čísla 3. Tento operátor porovnává hodnoty na to, že se NErovnají. Protože naše hodnoty jsou právě rovny, na obrazovku se vypíše '-':

php<?php
  if (3 != 3) {
    echo '+++';
  } else {
    echo '---'; // spustí se toto, protože hodnoty jsou stejné
  }
?>

Nechť je nyní jedna z našich hodnot v uvozovkách. V tomto případě operátor != je stále bude považovat za stejné (protože se shoduje hodnota, a typ není pro tento operátor důležitý) a opět vypíše '-':

php<?php
  if ('3' != 3) {
    echo '+++';
  } else {
    echo '---'; // spustí se toto, protože hodnoty jsou stejné
  }
?>

Nyní porovnejme dvě čísla 3 pomocí operátoru !==. Ten také je bude považovat za stejné a vypíše '-':

php<?php
  if (3 !== 3) {
    echo '+++';
  } else {
    echo '---'; // spustí se toto, protože hodnoty jsou stejné
  }
?>

Pokud však nyní jednu z trojek vezmeme do uvozovek, operátor !== bude považovat naše trojky za nerovné, protože, ačkoli jsou jejich hodnoty stejné, mají různý typ:

php<?php
  if ('3' !== 3) {
    echo '+++'; // spustí se toto, protože hodnoty NEjsou stejné
  } else {
    echo '---';
  }
?>
Задание 1

Bez spuštění kodu určete, co se vypíše na obrazovku:

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

Bez spuštění kodu určete, co se vypíše na obrazovku:

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

Bez spuštění kodu určete, co se vypíše na obrazovku:

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

Bez spuštění kodu určete, co se vypíše na obrazovku:

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

Bez spuštění kodu určete, co se vypíše na obrazovku:

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