|
In PHP While Schleifen Programmieren
Stell Dir vor, Dein Programm soll bis 99 zählen. Wie würdest Du
das programmieren ? 99x ein echo schreiben und so 99 Zeilen Code belegen ?
Man würde sich warscheinlich die Finger wund tippen :D
Ein Beispiel:
<?php $zaehler = 1;
while ($zaehler <= 10) { echo "Der Zähler steht bei $zaehler <br>"; $zaehler++; } ?>
|
Ausgabe: | Der Zähler steht bei 1 Der Zähler steht bei 2 Der Zähler steht bei 3 Der Zähler steht bei 4 Der Zähler steht bei 5 Der Zähler steht bei 6 Der Zähler steht bei 7 Der Zähler steht bei 8 Der Zähler steht bei 9 Der Zähler steht bei 10 |
Zuerst setzen wir den $zaehler auf den Startwert 1. While bedeutet
soviel übersetzt wie "So lange" die Bedingung innerhalb der runden
Klammern erfüllt ist, mach bitte das was in den geschwungenen Klammern steht.
In der geschwungenen Klammer wird per Echo der Text ausgegeben.
In der Zeile darauf wird der Wert, welcher in der Variable $zaehler gespeichert
ist +1 aufaddiert. Danach wird die Schleife nochmal durchlaufen und zwar
solange die Bedingung in den runden klammern erfüllt ist ; solange also
$zaehler kleiner und gleich 10 ist.
Fehlerquelle: vergisst man das $zaehler++; dann erhöht sich
der Wert von $zaehler nicht und die Schleife wird solange durchlaufen wie $zaehler
kleiner und gleich 10 ist. Ihr vermutet richtig: da der Wert bei keinem der durchläufe
erhöht wird, läuft die Schleife unendlich und euer Programm endet nie !
Foreach Schleifen - Arrays durchlaufen
Hier möchte ich euch die Möglichkeiten von Foreach kurz zeigen,
womit man Arrays durchlaufen kann. Man hat viele Werte im Array gespeichert
und kann alle einzeln in dieser Schleife durchlaufen.
Beispiel:
<?php $warenkorb[4711] = "Mortadella"; $warenkorb[5522] = "Käse"; $warenkorb[8888] = "Joghurt";
foreach($warenkorb as $nr => $artikel) { echo "Im Warenkorb liegt $artikel - Artikelnummer $nr<br>"; } ?>
|
Ausgabe: | Im Warenkorb liegt Mortadella - Artikelnummer 4711 Im Warenkorb liegt Käse - Artikelnummer 5522 Im Warenkorb liegt Joghurt - Artikelnummer 8888 |
Es wird das gesamte $warenkorb Array durchlaufen. Die Zahl aus den Klammern
die wir als Artikelnummer genommen haben übergibt die Schleife in die Variable
$nr und den gekauften Artikel in $artikel.
For Schleifen durchlaufen
Man kann Schleifen auch mit dem Befehl for erstellen.
Beispiel:
<?php for ($i = 1; $i <= 10; $i++) { echo "Der Zähler steht bei $i <br>"; } ?>
|
In den runden klammern definiert man genau den Durchlauf. Als erste legen wir den Startwert
für $i auf 1. Dann sagen wir der for Schleife, dass
diese solange durchlaufen werden soll, solange $i kleiner gleich 10 ist. Als
letztes geben wir an, was nach jedem Schleifendurchlauf passieren soll. Es wird nach
jedem Durchlauf die Variable $i um +1 erhöht. Die Ausgabe ist also
genauso wie beim ersten While Skript , allerdings haben wir
die Schleife diesmal mit einem anderen Befehl realisiert.
|