Seite 1 von 1
[gelöst]for Schleife: Bedingung == nicht erlaubt?
Verfasst: 03.11.2004 21:39
von shwepsi
Hallo,
ich habe eben locker eine halbe Stunde an einer for Schleife gesessen, sie wollte einfach nicht starten, die ich zum Schluss auf
reduziert habe...
Als Grund stellte sich die Bedingung herraus, das '==' ist dort scheinbar nicht erlaubt, kann das sein?
Verfasst: 03.11.2004 22:31
von PhilippK
Erlaubt ist das schon - nur funktionieren wird's trotzdem nicht...
http://de2.php.net/for hat geschrieben:Zu Beginn jedes Durchlaufs wird nun ausdr2 geprüft. Wenn dieser TRUE ist, fährt die Schleife mit der Ausführung der nachfolgenden Anweisung(en) fort. Ist das Ergebnis FALSE, wird die Schleife beendet.
Da $i im ersten Durchlauf nicht 10 (sondern 1) ist, bricht die Schleife - berechtigterweise - ab.
Da gehört keine Abbruchsbedindung sondern eine Wahr/Falsch-Prüfung zur Fortsetzung hin.
könnte helfen
Gruß, Philipp
Verfasst: 03.11.2004 22:42
von shwepsi
THX, auf die Lösung bin ich schliesslich auch gekommen ...
(deswegen frug ich auch explizit nach ==)
Zu Beginn jedes Durchlaufs wird nun ausdr2 geprüft. Wenn dieser TRUE ist, fährt die Schleife mit der Ausführung der nachfolgenden Anweisung(en) fort. Ist das Ergebnis FALSE, wird die Schleife beendet.
Das interessierte mich dann aber doch, jetzt verstehe ich warum es bei == nicht klappt
Also THX nochmal
(das Chaos der eigenen Worte durchliest
ich glaube ich sollte ins Bett....)
Verfasst: 04.11.2004 01:35
von Blutgerinsel
shwepsi hat geschrieben:Das interessierte mich dann aber doch, jetzt verstehe ich warum es bei == nicht klappt
Also THX nochmal
(das Chaos der eigenen Worte durchliest
ich glaube ich sollte ins Bett....)
Tja Sinn und Zweck einer kopfgesteuerten/fußgesteuerten/Zählschleife ist es Programmcode zu wiederholen und dies kann man nur erreichen wenn nach jedem Schleifendurchlauf geprüft wird ob die Bedingung noch zutrifft/nicht zutifft......
Tritt die Bedingung nie in Kraft wird bei einer kopfgesteuerten Schleife nie der Code durchlaufen...
Verfasst: 04.11.2004 09:38
von Christian_W
Wenn Du die Schleife unbedingt genau bei 10 abbrechen willst mach's doch einfach so:
Eine derartige Abfrage birgt aber immer die Gefahr einer Endlosschleife. Was wenn (aus welchem Grund auch immer) die 10 übersprungen wird?
Gruß Christian
Verfasst: 04.11.2004 12:30
von Blutgerinsel
Christian_W hat geschrieben:Wenn Du die Schleife unbedingt genau bei 10 abbrechen willst mach's doch einfach so:
Eine derartige Abfrage birgt aber immer die Gefahr einer Endlosschleife. Was wenn (aus welchem Grund auch immer) die 10 übersprungen wird?
Gruß Christian
Zauberwort break
