Prefix és posztfix típus PHP-ben

Valójában az inkrementálás és dekrementálás művelete kétféleképpen írható le. Posztfix formában a művelet a változó neve után kerül írásra, így: $a++, míg prefix formában - a változó neve előtt, így: ++$a. Nézzük példákon, mi a különbség a két módszer között.

A következő példában az első echo 0-t fog kiírni, mert először a kimenetre írás történik, és csak azután növelődik a változó:

php<?php
  $num = 0;
  echo $num++; // 0-t ír ki, mert a változó csak az echo után növelődik
  echo $num;   // 1-et ír ki - a változó megváltozott
?>

Most pedig a változó először növelődik, és csak azután történik a kimenetre írás:

php<?php
  $num = 0;
  echo ++$num; // 1-et ír ki - a változó azonnal megnövekedett
?>

Ez a viselkedés nem csak a kimenetre írásra érvényes, hanem az értékadásra is:

php<?php
  $num1 = 0;
  $num2 = $num1++; // a $num2 változóba 0 kerül
  echo $num2;      // 0-t ír ki
  echo $num1;      // 1-et ír ki - a $num1 változó a $num2-ba való beírás után változott meg
?>

Most változtassuk meg a posztfix formát prefix formára:

php<?php
  $num1 = 0;
  $num2 = ++$num1; // a $num2 változóba 1 kerül
  echo $num2;      // 1-et ír ki
?>

Ha a műveletünk egy külön sorban kerül végrehajtásra, akkor nincs különbség a prefix és a posztfix forma között:

php<?php
  $num = 0;
  ++$num;
  $num++;
  echo $num; // 2-t ír ki
?>
Задание 1

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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

A kód futtatása nélkül határozd meg, mit ír ki a képernyőre:

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