PHP-daky prefiks we postfiks tipi

Aslynda inkrement we dekrement amallary iki usul bilen ýazyp bolýar. Postfiks görnüşinde amal üýtgeýjiniň adyndan soň ýazylýar, şeýle: $a++, prefiks görnüşinde bolsa - üýtgeýjiniň adyndan öň, şeýle: ++$a. Geliň mysallarda, iki usulyň arasyndaky tapawudy göreliň.

Aşakdaky mysalda birinji echo 0 çykarar, sebäbi ilki bilen ekrana çykaryş amal ýerine ýetiriler, soňra bolsa üýtgeýji köpelýär:

php<?php
  $num = 0;
  echo $num++; // 0 çykarar, sebäbi üýtgeýji faqat echo-dan soň köpelýär
  echo $num;   // 1 çykarar - üýtgeýji üýtgedi
?>

Indi bolsa, üýtgeýji ilki köpelýär, soňra ekrana çykarylýar:

php<?php
  $num = 0;
  echo ++$num; // 1 çykarar - üýtgeýji derrew köpeldi
?>

Bu ýagdaý diňe ekrana çykaryş üçin däl, eýsem, bellik üçin hem dogry:

php<?php
  $num1 = 0;
  $num2 = $num1++; // $num2 üýtgeýjisine 0 ýazylar
  echo $num2;      // 0 çykarar
  echo $num1;      // 1 çykarar - $num1 üýtgeýjisi $num2-e ýazylandan soň üýtgedi
?>

Indi bolsa, postfiks görnüşini prefiks görnüşine çalşyralyň:

php<?php
  $num1 = 0;
  $num2 = ++$num1; // $num2 üýtgeýjisine 1 ýazylar
  echo $num2;      // 1 çykarar
?>

Eger amalymyz aýratyn setirde ýerine ýetirilýän bolsa, onda prefiks we postfiks görnüşleriniň arasynda tapawut ýok:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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

Kody işletmän, ekrana näme çykjakdygyny kesgitläň:

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