Нестрогое сравнение логических значений в 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 '---';
  }
?>