burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
23.06.2017, 07:16 Uhr - Impressum

Tutorials - Erste Schritte - Schleifen - die for-Schleife

Tutorials - Erste Schritte
Schleifen: die for-Schleife
Schleifen benutzt man, wenn man etwas ewig oft wiederholen muss.
So z.B. später mal in einer HTML-Tabelle.

Die erste Schleife, die ich hier einbaue ist die for-Schleife.
Diese Schleife wird benutzt, um etwas beliebig oft zu wiederholen, gleichzeitig ändert sie bei jedem Durchgang eine bestimmte Variable um einen Bestimmten Wert.

Beispiel: for($x = 0; $x <= 100; $x = $x + 10);

Die erste Angabe, $x = 0;, besagt, dass beim ersten Durchlauf der Schelife $x gleich 0 gesetzt wird.
Die zweite Angabe, $x <= 100;, besagt, dass die Schleife solang wiederholt wird, wie $x kleiner oder gleich 100 ist.
Die dritte Angabe, $x = $x + 10;, besagt, dass $x bei jeder Schleifenwiederholung um 10 größer wird.

Das Beispiel im Script, es wird jeweils $x ausgegeben:Wie bei den if-Bedingungen sind hier keine geschweiften Klammern nötig, wenn nur ein Befehl wiederholt werden soll.
Sollen jedoch mehrere wiederholt werden, benötigt man sieWichtig !!! Beachte genau die Bedingungen, die du setzt !!!
Wenn du das > oder < falsch setzt oder statt $x = $x - 1 aus Versehen $x = $x + 1 schreibst, kann es passieren, dass das Script bis in alle Ewigkeiten läuft, was bedeuten kann, dass dein Server für eine gute Zeit nicht ansprechbar ist - im noch günstigsten Falle aber wird die for-Schleife gar nicht ausgeführt


Im folgenden Beispiel wird von der Zahl, die du in das Formular eingibst, bis zur 0 runtergezählt.
gesetzt in $_POST 'Startwert', 'absenden'
<?php

?>
Countdown von:
(die Zahl bitte kleiner als 10000 wählen)
Wenn du nun in das Formular einen Text eingibst (es muss nur eine Nicht-Zahl dabei sein)... was passiert dann ?
Falls du es noch nicht versucht hast, probriers doch mal aus.

Antwort:
In der Schleife wird dann $x gefüllt mit Text und die Schleife wird einmal durchlaufen.
Wenn das Script mit dem ersten Durchlauf fertig ist, probiert es, die Bedingung das erste mal zu überprüfen.
D.h. es fragt sich: ist $x noch immer größer oder gleich 0 ?
Die Antwort ist einfach: nein. Text ist gar nicht vergleichbar mit 0. Er bricht die Schleife ab.
Deshalb wird, wenn man in diesem Script Text in das Formular eingibt, die Schleife exakt ein einziges Mal durchlaufen.

Fazit: die for-Schleife prüft die Wahrheit ihrer Bedingung erst nach dem ersten Durchlauf.
Dies macht auch eine weitere Schleife, die do-while-Schleife (deutsch: tu solang wie)
© 2004-2005 - Impressum