PHPда логик қийматларни нотўғри солиштириш

Олдинги мисолда мен солиштириш учун === операторини ишлатганман. Бунда бизнинг ўзгарувчимиз true билан ҳам қиймат, ҳам тур жиҳатидан тенгликка солиштирилди.

Бизнинг масаламизда == операторини ҳам ишлатиш мумкин. Агар test ўзгарувчисида ҳар доим true ёки false қийматларнинг бири турса, у ҳолда ҳеч нарса ўзгармайди:

php<?php
  $test = true; // бу ерда ёки true, ёки false ёзамиз
  
  if ($test == true) {
    echo '+++';
  } else {
    echo '---';
  }
?>

Аммо агар $test ўзгарувчисига ҳар қандай қийматлар тушуши мумкин бўлса, у ҳолда ҳамма нарса жуда мураккаб бўлиб қолади. Бундай ҳолда, агар ўзгарувчида мантиқий бўлмаган қиймат бўлса, у қиймат аввал мантиқий турга ўгирилади ва фақат шундан сўнг солиштирилади.

Масалан, бизнинг ўзгарувчимизда 1 сани турсин. Бунда у аввал мантиқий турга, яъни true га ўгирилади. Ва сўнгра солиштириш бажарилади:

php<?php
  $test = 1;
  
  if ($test == true) {
    echo '+++'; // бу ишлайди, чунки 1 == true - тўғри
  } else {
    echo '---';
  }
?>

Аммо, масалан, 0 сани false га ўгирилади. Ва бизнинг шартимиз натижада ёлғон бўлади:

php<?php
  $test = 0;
  
  if ($test == true) {
    echo '+++';
  } else {
    echo '---'; // бу ишлайди, чунки 0 == true - нотўғри
  }
?>
Задание 1

Кодни ишлатмасдан, экранга нама чиқишини аниқланг:

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

Кодни ишлатмасдан, экранга нама чиқишини аниқланг:

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

Кодни ишлатмасдан, экранга нама чиқишини аниқланг:

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

Кодни ишлатмасдан, экранга нама чиқишини аниқланг:

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

Кодни ишлатмасдан, экранга нама чиқишини аниқланг:

php<?php
  $test = '';
    
  if ($test == false) {
    echo '+++';
  } else {
    echo '---';
  }
?>
Задание 6

Кодни ишлатмасдан, экранга нама чиқишини аниқланг:

php<?php
  if ($test == true) {
    echo '+++';
  } else {
    echo '---';
  }
?>