Tipo prefisso e postfisso in PHP

In realtà, le operazioni di incremento e decremento possono essere scritte in due modi. Nella forma postfissa l'operazione viene scritta dopo il nome della variabile, così: $a++, mentre nella forma prefissa - prima del nome della variabile, così: ++$a. Vediamo con degli esempi qual è la differenza tra i due metodi.

Nel seguente esempio la prima istruzione echo visualizzerà 0, perché prima avverrà l'output sullo schermo, e solo dopo la variabile verrà incrementata:

php<?php
  $num = 0;
  echo $num++; // visualizzerà 0, perché la variabile aumenta solo dopo echo
  echo $num;   // visualizzerà 1 - la variabile è cambiata
?>

E ora la variabile prima aumenta, e solo dopo avverrà l'output sullo schermo:

php<?php
  $num = 0;
  echo ++$num; // visualizzerà 1 - la variabile è aumentata immediatamente
?>

Questo comportamento è valido non solo per l'output sullo schermo, ma anche per l'assegnazione:

php<?php
  $num1 = 0;
  $num2 = $num1++; // nella variabile $num2 verrà scritto 0
  echo $num2;      // visualizzerà 0
  echo $num1;      // visualizzerà 1 - la variabile $num1 è cambiata dopo l'assegnazione a $num2
?>

E ora cambiamo la forma postfissa con quella prefissa:

php<?php
  $num1 = 0;
  $num2 = ++$num1; // nella variabile $num2 verrà scritto 1
  echo $num2;      // visualizzerà 1
?>

Se la nostra operazione viene eseguita su una riga separata, non c'è differenza tra la forma prefissa e postfissa:

php<?php
  $num = 0;
  ++$num;
  $num++;
  echo $num; // visualizzerà 2
?>
Задание 1

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num = 3;
  echo ++$num;
?>
Задание 2

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num = 3;
  echo $num++;
?>
Задание 3

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num = 3;
  echo --$num;
?>
Задание 4

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num = 3;
  echo $num--;
?>
Задание 5

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num1 = 3;
  $num2 = ++$num1;
  echo $num1;
  echo $num2;
?>
Задание 6

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num1 = 3;
  $num2 = $num1++;
  echo $num1;
  echo $num2;
?>
Задание 7

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num1 = 3;
  $num2 = --$num1;
  echo $num1;
  echo $num2;
?>
Задание 8

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num1 = 3;
  $num2 = $num1--;
  echo $num1;
  echo $num2;
?>
Задание 9

Senza eseguire il codice, determina cosa verrà visualizzato sullo schermo:

php<?php
  $num1 = 3;
  $num1++;
  $num2 = $num1--;
  echo $num1++;
  echo --$num2;
?>