Het probleem van accolades in loops in PHP
Hoewel accolades in loops kunnen worden weggelaten, raad ik dit sterk af, omdat dergelijke code vaak tot fouten leidt.
Laten we een voorbeeld bekijken. Stel dat we de volgende code hebben:
<?php
for ($i = 0; $i <= 9; $i++)
echo $i; // geeft getallen van 0 tot 9 weer
?>
Ik breng een kleine correctie aan in de bovenstaande code (vind welke) - en deze zal niet meer werken:
<?php
for ($i = 0; $i <= 9; $i++);
echo $i; // geeft 10
?>
Dus, wat heb ik gecorrigeerd?
Het probleem ontstond omdat ik een
puntkomma plaatste na de haak ) van
de loop. In dat geval ontstaat een zogenaamde
loop zonder lichaam: deze draait gewoon door
vanbinnen, en de volgende regel zal er niet meer
toe behoren. Daarom raad ik, om problemen te voorkomen,
altijd aan om accolades te plaatsen
in loops.
Vertel wat het resultaat zal zijn van het uitvoeren van de volgende code:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem);
echo $elem;
?>