Gelijkheid in waarde en type in PHP

Stel dat u zo wilt vergelijken dat het getal tussen aanhalingstekens niet gelijk is aan hetzelfde getal zonder aanhalingstekens. Met andere woorden, u wilt zo vergelijken dat de vergelijking niet alleen op waarde, maar ook op gegevenstype gebaseerd is. Hiervoor moet u in plaats van de operator == de operator === gebruiken. Vergelijking met een dergelijke operator wordt strikt genoemd.

Zie het voorbeeld:

php<?php
  if ('3' === 3) {
    echo '+++';
  } else {
    echo '---'; // dit wordt uitgevoerd, omdat de waarden niet gelijk zijn in type
  }
?>

Maar bij het vergelijken van twee strings '3' wordt '+++' op het scherm weergegeven:

php<?php
  if ('3' === '3') {
    echo '+++'; // dit wordt uitgevoerd
  } else {
    echo '---';
  }
?>

Hetzelfde geldt voor het vergelijken van getallen:

php<?php
  if (3 === 3) {
    echo '+++'; // dit wordt uitgevoerd
  } else {
    echo '---';
  }
?>

Het verschil tussen de twee operators komt naar voren precies wanneer de waarden hetzelfde zijn, maar het gegevenstype verschilt. In andere gevallen werken deze operators hetzelfde. Bijvoorbeeld, bij het vergelijken van verschillende getallen, zal uiteraard '---' worden weergegeven:

php<?php
  if (2 === 3) {
    echo '+++';
  } else {
    echo '---'; // dit wordt uitgevoerd
  }
?>

Tegenwoordig is het in PHP algemeen geaccepteerd om overal strikte vergelijking te gebruiken. Men vindt dat de code in dat geval minder gevoelig is voor fouten.

Задание 1

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

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

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

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

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

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

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

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

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

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