PHP expert |
|
Dark Paul... dat is de 'noob' uitleg voor for. En dus niet HOE de for loop werkt.
Het eerste argument van de for loop wordt enkel op het begin uitgevoerd, kan opgedeeld worden in meerdere argumenten en is optioneel. Het tweede argument is een boolean en als er aan die conditie wordt voldaan wordt wat er tussen de for loop staat uitgevoerd (per loop) en is weeral optioneel. Het derde argument kan opgedeeld worden in meerdere argument en is een commando dat moet uitgevoerd worden op het einde van een loop en is ook optioneel.
<?php
for($i = 0; $i < 10; $i++) {
echo "halo";
}
<?php for($i = 0; $i < 10; $i++) { }
is dus hetzelfde als:
$i = 0;
for(;;) {
if($i == 10) break;
echo "halo";
$i++;
}
$i = 0; for(;;) { if($i == 10) break; $i++; }
Een for loop is ook heel eenvoudig als een while loop te schrijven.
Eigenlijk exact hetzelfde als hierboven buiten dat die if constructie (maar dan omgekeerd geschreven) dan tussen de haakjes staat bij while en niet tussen de accolades.
$i = 0;
while($i < 10) {
echo "halo";
$i++;
}
$i = 0; while($i < 10) { $i++; }
Wat ik vermelde van opdelen in meerdere argumenten zal ik hier tonen.
for($j = 0, $end = 10; $j < $end; $j++, $end-=$j, print 'halo');
for($j = 0, $end = 10; $j < $end; $j++, $end-=$j, print 'halo');
Dat zal dus vier keer hallo printen.
Let wel, als je wil echoen in een for constructie (niet de loop) dan moet je print gebruiken.
Een ander voorbeeld is bv. faculteit berekenen:
<?php
$getal = 5; // faculteit van 5: 5 * 4 * 3 * 2 * 1
for($result = 1; $getal > 0; $result*=$getal--);
echo $result;
<?php $getal = 5; // faculteit van 5: 5 * 4 * 3 * 2 * 1 for($result = 1; $getal > 0; $result*=$getal--);
En wat dark paul daar zit te naaben is zo een beetje de normale situatie waar die wordt gebruikt. Maar je ziet dus dat die heel wat sterker is dan het lijkt.
OWNED |