Problem opcjonalności nawiasów klamrowych w warunkach w PHP

Mimo że PHP dopuszcza pokazane powyżej skróty z nawiasami klamrowymi, ja generalnie nie polecam tak robić, ponieważ jest to rozsadnik trudnych do wychwycenia błędów.

Załóżmy na przykład, że istnieje następujący kod:

php<?php
  $test = 3;
  
  if ($test > 0)
    echo $test;
?>

Załóżmy teraz, że postanowiliśmy w przypadku, gdy warunek jest spełniony, zrobić jeszcze drugie echo:

php<?php
  $test = 3;
  
  if ($test > 0)
    echo $test;
    echo '+++';
?>

Jednakże bez nawiasów klamrowych wewnątrz warunku znajduje się tylko pierwsze wywołanie, czyli pierwsze wypisanie będzie uruchamiać się przy spełnionym warunku, a drugie - zawsze.

Faktycznie nasz kod jest równoważny takiemu:

php<?php
  $test = 3;
  
  if ($test > 0) {
    echo $test;
  }
  
  echo '+++'; // ten wiersz znalazł się poza warunkiem
?>

A my chcielibyśmy taki kod:

php<?php
  $test = 3;
  
  if ($test > 0) {
      echo $test;
      echo '+++'; // ten wiersz jest wewnątrz warunku
  }
?>

Właśnie dlatego zaleca się zawsze stosować rozmieszczenie nawiasów klamrowych, aby nie wpadać w tego rodzaju błędy.

Задание 1

Nie uruchamiając kodu, określ, co wyświetli się na ekranie:

php<?php
  $num = 5;
  
  if ($num === 5)
    echo $num;
    echo '+++';
?>
Задание 2

Nie uruchamiając kodu, określ, co wyświetli się na ekranie:

php<?php
  $num = 0;
  
  if ($num === 5)
    echo $num;
    echo '+++';
?>
Задание 3

Nie uruchamiając kodu, określ, co wyświetli się na ekranie:

php<?php
  $num = 0;
  
  if ($num === 5)
    echo $num;
    echo '---';
  echo '+++';
?>