PHP-də qiymət və tip bərabərliyi

Tutaq ki, siz elə müqayisə etmək istəyirsiniz ki, dırnaq içindəki ədəd eynı ədədə, lakin dırnaqsız, bərabər olmasın. Başqa sözlə, siz müqayisəni təkcə qiymətə görə deyil, həm də məlumat növünə görə etmək istəyirsiniz. Bunun üçün == operatoru əvəzinə === operatorundan istifadə etməlisiniz. Bu operatorla müqayisə ciddi adlanır.

Nümunəyə baxın:

php<?php
  if ('3' === 3) {
    echo '+++';
  } else {
    echo '---'; // bu işləyəcək, çünki dəyərlər tipə görə bərabər deyil
  }
?>

Lakin iki sətir '3' müqayisə edildikdə ekranda '+++' çıxacaq:

php<?php
  if ('3' === '3') {
    echo '+++'; // bu işləyəcək
  } else {
    echo '---';
  }
?>

Eynilə, ədədləri müqayisə edərkən də:

php<?php
  if (3 === 3) {
    echo '+++'; // bu işləyəcək
  } else {
    echo '---';
  }
?>

İki operator arasındakı fərq elə halda özünü göstərir ki, dəyərlər eynidir, amma məlumat növü fərqlidir. Digər hallarda bu operatorlar eyni işləyir. Məsələn, fərqli ədədləri müqayisə edərkən, əlbəttə ki, mənfi işarəsi çıxacaq:

php<?php
  if (2 === 3) {
    echo '+++';
  } else {
    echo '---'; // bu işləyəcək
  }
?>

Hal-hazırda PHP-də hər yerdə ciddi müqayisədən istifadə etmək ümumi qəbul edilib. Belə hesab edilir ki, bu zaman kod səhvlərə daha az məruz qalır.

Задание 1

Kodu işlətmədən müəyyən edin ki, ekrana nə çıxacaq:

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

Kodu işlətmədən müəyyən edin ki, ekrana nə çıxacaq:

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

Kodu işlətmədən müəyyən edin ki, ekrana nə çıxacaq:

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

Kodu işlətmədən müəyyən edin ki, ekrana nə çıxacaq:

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

Kodu işlətmədən müəyyən edin ki, ekrana nə çıxacaq:

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