Prefiksa un postfiksa tips PHP
Patiesībā inkrementācijas un dekrementācijas operācijas
var ierakstīt divos veidos. Postfiksajā
veidā operācija tiek ierakstīta pēc mainīgā nosaukuma,
šeit šādi: $a++, bet prefiksajā
veidā - pirms mainīgā nosaukuma, šeit šādi:
++$a. Apskatīsim piemēros,
kāda ir atšķirība starp abiem veidiem.
Nākamajā piemērā pirmais echo izvadīs
0, jo vispirms notiks izvade
uz ekrānu, un tikai pēc tam mainīgais palielināsies:
<?php
$num = 0;
echo $num++; // izvadīs 0, jo mainīgais palielināsies tikai pēc echo
echo $num; // izvadīs 1 - mainīgais mainījās
?>
Bet tagad mainīgais vispirms palielināsies, un tikai pēc tam notiks izvade uz ekrānu:
<?php
$num = 0;
echo ++$num; // izvadīs 1 - mainīgais palielinājās uzreiz
?>
Šāda uzvedība ir spēkā ne tikai izvadei uz ekrānu, bet arī piešķiršanai:
<?php
$num1 = 0;
$num2 = $num1++; // mainīgajā $num2 ierakstīsies 0
echo $num2; // izvadīs 0
echo $num1; // izvadīs 1 - mainīgais $num1 mainījās pēc ierakstīšanas $num2
?>
Tagad nomainīsim postfikso formu uz prefikso:
<?php
$num1 = 0;
$num2 = ++$num1; // mainīgajā $num2 ierakstīsies 1
echo $num2; // izvadīs 1
?>
Ja mūsu operācija tiek veikta atsevišķā rindā, tad starpības starp prefikso un postfikso formām nav:
<?php
$num = 0;
++$num;
$num++;
echo $num; // izvadīs 2
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num = 3;
echo ++$num;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num = 3;
echo $num++;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num = 3;
echo --$num;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num = 3;
echo $num--;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num1 = 3;
$num2 = ++$num1;
echo $num1;
echo $num2;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num1 = 3;
$num2 = $num1++;
echo $num1;
echo $num2;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num1 = 3;
$num2 = --$num1;
echo $num1;
echo $num2;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num1 = 3;
$num2 = $num1--;
echo $num1;
echo $num2;
?>
Nelaižot kodu, nosakiet, ko izvadīs uz ekrāna:
<?php
$num1 = 3;
$num1++;
$num2 = $num1--;
echo $num1++;
echo --$num2;
?>