Rovnost podle hodnoty a typu v PHP

Předpokládejme, že chcete porovnávat tak, aby číslo v uvozovkách nebylo rovno stejnému číslu bez uvozovek. Jinými slovy, chcete porovnávat tak, aby porovnání bylo nejen podle hodnoty, ale také podle typu dat. K tomu místo operátoru == použijte operátor ===. Porovnání s takovým operátorem se nazývá přísné.

Podívejte se na příklad:

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

Zatímco při porovnání dvou řetězců '3' se na obrazovku vypíše '+++':

php<?php
  if ('3' === '3') {
    echo '+++'; // sestaví se toto
  } else {
    echo '---';
  }
?>

Stejně jako při porovnání čísel:

php<?php
  if (3 === 3) {
    echo '+++'; // sestaví se toto
  } else {
    echo '---';
  }
?>

Rozdíl mezi dvěma operátory se projevuje právě tehdy, když jsou hodnoty stejné, ale liší se datový typ. V ostatních případech tyto operátory fungují stejně. Například při porovnání různých čísel se samozřejmě vypíše mínus:

php<?php
  if (2 === 3) {
    echo '+++';
  } else {
    echo '---'; // sestaví se toto
  }
?>

V současné době je v PHP běžné používat všude přísné porovnání. Má se za to, že v tomto případě je kód méně náchylný k chybám.

Задание 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 = 3;
    
  if ($test1 === $test2) {
    echo '+++';
  } else {
    echo '---';
  }
?>