Præfiks og postfiks type i PHP
Faktisk kan inkrement- og dekrementoperationer
skrives på to måder. I postfiks
form skrives operationen efter variabelnavnet,
sådan her: $a++, og i præfiks
form - foran variabelnavnet, sådan her:
++$a. Lad os se med eksempler,
hvad forskellen er mellem de to måder.
I det næste eksempel vil den første echo udskrive
0, fordi udskriften til skærmen vil ske først,
og først derefter vil variablen blive øget:
<?php
$num = 0;
echo $num++; // vil udskrive 0, da variablen kun øges efter echo
echo $num; // vil udskrive 1 - variablen er ændret
?>
Og nu vil variablen blive øget først, og først derefter vil udskriften til skærmen ske:
<?php
$num = 0;
echo ++$num; // vil udskrive 1 - variablen blev øget med det samme
?>
Denne opførsel gælder ikke kun for udskrift til skærmen, men også for tildeling:
<?php
$num1 = 0;
$num2 = $num1++; // til variablen $num2 vil 0 blive skrevet
echo $num2; // vil udskrive 0
echo $num1; // vil udskrive 1 - variablen $num1 ændrede sig efter tilskrivningen til $num2
?>
Lad os nu ændre postfiksformen til præfiksform:
<?php
$num1 = 0;
$num2 = ++$num1; // til variablen $num2 vil 1 blive skrevet
echo $num2; // vil udskrive 1
?>
Hvis vores operation udføres på en separat linje, er der ingen forskel mellem præfiks- og postfiksformerne:
<?php
$num = 0;
++$num;
$num++;
echo $num; // vil udskrive 2
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num = 3;
echo ++$num;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num = 3;
echo $num++;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num = 3;
echo --$num;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num = 3;
echo $num--;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num1 = 3;
$num2 = ++$num1;
echo $num1;
echo $num2;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num1 = 3;
$num2 = $num1++;
echo $num1;
echo $num2;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num1 = 3;
$num2 = --$num1;
echo $num1;
echo $num2;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num1 = 3;
$num2 = $num1--;
echo $num1;
echo $num2;
?>
Uden at køre koden, skal du bestemme, hvad der vil blive udskrevet på skærmen:
<?php
$num1 = 3;
$num1++;
$num2 = $num1--;
echo $num1++;
echo --$num2;
?>