Likhet i verdi og type i PHP

La oss si at du ønsker å sammenligne på en slik måte at et tall i anførselstegn ikke skal være likt det samme tallet uten anførselstegn. Med andre ord, du ønsker å sammenligne slik at sammenligningen ikke bare er basert på verdi, men også på datatype. For å gjøre dette bruker du operatoren === i stedet for operatoren ==. Sammenligning med en slik operator kalles streng.

Se eksempel:

php<?php
  if ('3' === 3) {
    echo '+++';
  } else {
    echo '---'; // dette vil kjøre, fordi verdiene ikke er like i type
  }
?>

Men ved sammenligning av to strenger '3' vil '+++' skrives ut:

php<?php
  if ('3' === '3') {
    echo '+++'; // dette vil kjøre
  } else {
    echo '---';
  }
?>

Samme gjelder ved sammenligning av tall:

php<?php
  if (3 === 3) {
    echo '+++'; // dette vil kjøre
  } else {
    echo '---';
  }
?>

Forskjellen mellom de to operatorene vises nøyaktig når verdiene er de samme, men datatypen er forskjellig. I andre tilfeller fungerer disse operatorene på samme måte. For eksempel, ved sammenligning av forskjellige tall, vil selvsagt '---' skrives ut:

php<?php
  if (2 === 3) {
    echo '+++';
  } else {
    echo '---'; // dette vil kjøre
  }
?>

I dag er det allment akseptert i PHP å bruke streng sammenligning overalt. Det antas at koden i dette tilfellet er mindre utsatt for feil.

Задание 1

Uten å kjøre koden, bestem hva som vil skrives ut på skjermen:

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

Uten å kjøre koden, bestem hva som vil skrives ut på skjermen:

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

Uten å kjøre koden, bestem hva som vil skrives ut på skjermen:

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

Uten å kjøre koden, bestem hva som vil skrives ut på skjermen:

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

Uten å kjøre koden, bestem hva som vil skrives ut på skjermen:

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