PHP හි පෙරඅග සහ පස්අග වර්ගය

ඇත්තටම වැඩි කිරීමේ සහ අඩු කිරීමේ ක්‍රියාකාරකම් ක්‍රම දෙකකින් ලිවිය හැකිය. පස්අග වර්ගයේදී ක්‍රියාකාරකම විචල්‍ය නාමයට පසුව ලියනු ලැබේ, �ලෙස: $a++, සහ පෙරඅග වර්ගයේදී - විචල්‍ය නාමයට පෙර, එලෙස: ++$a. අපි උදාහරණ මගින් බලමු, ක්‍රම දෙක අතර වෙනස කුමක්ද කියා.

පහත උදාහරණයේ පළමු echo ප්‍රතිදානය කරන්නේ 0 වන අතර, මුලින්ම තිරයට ප්‍රතිදානය සිදුවන අතර, ඊට පසුව විචල්‍යය වැඩි වේ:

php<?php
  $num = 0;
  echo $num++; // 0 ප්‍රතිදානය කරයි, මක්නිසාද යත් විචල්‍යය echoට පසුව පමණක් වැඩි වේ
  echo $num;   // 1 ප්‍රතිදානය කරයි - විචල්‍යය වෙනස් විය
?>

දැන් විචල්‍යය මුලින්ම වැඩි වන අතර, ඊට පසුව තිරයට ප්‍රතිදානය සිදු වේ:

php<?php
  $num = 0;
  echo ++$num; // 1 ප්‍රතිදානය කරයි - විචල්‍යය වහාම වැඩි විය
?>

මෙම හැසිරීම වලංගු වන්නේ තිරයට ප්‍රතිදානය සඳහා පමණක් නොව, යොමු කිරීම සඳහාද වේ:

php<?php
  $num1 = 0;
  $num2 = $num1++; // $num2 විචල්‍යයට 0 ලියනු ලැබේ
  echo $num2;      // 0 ප්‍රතිදානය කරයි
  echo $num1;      // 1 ප්‍රතිදානය කරයි - විචල්‍යය $num1, $num2ට ලියා පසුව වෙනස් විය
?>

දැන් අපි පස්අග වර්ගය පෙරඅග වර්ගයට වෙනස් කරමු:

php<?php
  $num1 = 0;
  $num2 = ++$num1; // $num2 විචල්‍යයට 1 ලියනු ලැබේ
  echo $num2;      // 1 ප්‍රතිදානය කරයි
?>

අපගේ ක්‍රියාකාරකම වෙනම පේළියක ක්‍රියාත්මක වේ නම්, පෙරඅග සහ පස්අග වර්ග අතර වෙනසක් නොමැත:

php<?php
  $num = 0;
  ++$num;
  $num++;
  echo $num; // 2 ප්‍රතිදානය කරයි
?>
Задание 1

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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

කේතය ධාවනය නොකර, තීරණය කරන්න, තිරයට ප්‍රතිදානය වන්නේ කුමක්ද:

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