Predponski in priponski tip v PHP
Pravzaprav lahko operaciji inkrementa in dekrementa
zapišemo na dva načina. V priponski
obliki je operacija zapisana za imenom spremenljivke,
takole: $a++, v predponski
obliki pa - pred imenom spremenljivke, takole:
++$a. Poglejmo si s primeri,
v čem je razlika med obema načinoma.
V naslednjem primeru bo prvi echo izpisal
0, kajti najprej se bo izvršil izpis
na zaslon, šele nato pa se bo spremenljivka povečala:
<?php
$num = 0;
echo $num++; // izpiše 0, ker se spremenljivka poveča šele po echo
echo $num; // izpiše 1 - spremenljivka se je spremenila
?>
Zdaj pa se bo spremenljivka najprej povečala, šele nato pa bo izpis na zaslon:
<?php
$num = 0;
echo ++$num; // izpiše 1 - spremenljivka se je povečala takoj
?>
Takšno vedenje velja ne le za izpis na zaslon, temveč tudi za prirejanje:
<?php
$num1 = 0;
$num2 = $num1++; // v spremenljivko $num2 se zapiše 0
echo $num2; // izpiše 0
echo $num1; // izpiše 1 - spremenljivka $num1 se je spremenila po zapisu v $num2
?>
Zdaj pa zamenjajmo priponsko obliko s predponsko:
<?php
$num1 = 0;
$num2 = ++$num1; // v spremenljivko $num2 se zapiše 1
echo $num2; // izpiše 1
?>
Če se naša operacija izvede v ločeni vrstici, potem med predponsko in priponsko obliko ni razlike:
<?php
$num = 0;
++$num;
$num++;
echo $num; // izpiše 2
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num = 3;
echo ++$num;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num = 3;
echo $num++;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num = 3;
echo --$num;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num = 3;
echo $num--;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num1 = 3;
$num2 = ++$num1;
echo $num1;
echo $num2;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num1 = 3;
$num2 = $num1++;
echo $num1;
echo $num2;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num1 = 3;
$num2 = --$num1;
echo $num1;
echo $num2;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num1 = 3;
$num2 = $num1--;
echo $num1;
echo $num2;
?>
Brez zagon kode določite, kaj se izpiše na zaslon:
<?php
$num1 = 3;
$num1++;
$num2 = $num1--;
echo $num1++;
echo --$num2;
?>